ITPub博客

首页 > 云计算 > 公有云实践 > 亚马逊云科技为三七互娱提供稳定可靠的多区域容灾解决方案

亚马逊云科技为三七互娱提供稳定可靠的多区域容灾解决方案

公有云实践 作者:出海新观点 时间:2024-06-11 17:33:12 0 删除 编辑

关键字: [ 亚马逊云科技中国峰会2024, Aurora, 游戏平台服务, 多区域容灾架构, 亚马逊云科技, 数据同步机制, 故障恢复策略]

本文字数: 1300, 阅读完需: 6 分钟

导读

在亚马逊云科技中国峰会2024 上, 王瑞和张辉分享了37Games 游戏平台服的多区域多活容灾实践。他们介绍了游戏平台服的概念, 以及在亚马逊云科技上实现多区域容灾的架构。37Games 采用了Aurora 全球数据库、DynamoDB 全球表等服务, 实现了主备区域间的数据同步和容灾切换。通过每季度的切换演练,37Games 能够在15 分钟内完成故障恢复, 满足业务连续性要求。该架构还提高了扩展性和合规性, 为37Games 的全球化发展提供了有力支撑。

演讲精华

以下是小编为您整理的本次演讲的精华,共1000 字,阅读时间大约是5 分钟。

在2024 年亚马逊云科技中国峰会上, 亚马逊云科技解决方案架构师王瑞和37Games 运维工程师张辉分享了关于在亚马逊云科技上实现游戏平台服多区域多活容灾的实践。

王瑞首先介绍了游戏平台服的概念。游戏平台服不同于直接提供游戏内容的游戏服务器, 它负责游戏周边功能, 如注册、登录、充值等, 更像一个HTTP 服务。一个平台服可以接入非常多的游戏, 比如我们大家玩过很多可以用QQ 登录的, 可以用微信登录的, 他们都同时属于同一个平台服。绝大多数游戏公司都会使用亚马逊云科技来部署他们的游戏, 那些公司中绝大多数又会使用亚马逊云科技来部署他们的平台服, 因为亚马逊云科技提供了稳定的服务。

传统的游戏平台服架构是一个三层架构, 包括接入层、应用层和数据层。接入层负责接收玩家对各个业务的流量并分发到不同应用; 应用层处理不同业务逻辑; 数据层包括关系型数据库、非关系型数据库、内存数据库和对象存储等, 用于数据存储和缓存。

而多区域容灾架构利用了亚马逊云科技的多项服务和功能。在接入层, 使用CloudFront 和Route 53 进行流量分发。可以使用Failover 方案, 即通过在Route 53 上将业务域名CNAME 到CloudFront, 并在CloudFront 上配置Origin Failover, 当一个区域出现故障时,CloudFront 可以自动将流量切换到备份区域。也可以使用双活方案, 在CloudFront 前加入Route 53, 在CloudFront 配置的Origin 并不是真实的负载均衡器, 而是一个中间域名, 再由Route 53 通过权重或客户端IP 等策略将流量分发到不同区域。

在数据层, 关系型数据库使用Aurora Global Database 功能跨区域部署, 包括一个Primary Region 和多个Secondary Region 。所有写入操作在Primary Region 落盘, 然后通过基于存储的复制方式高效地将数据同步到Secondary Region, 效率高于基于日志的复制方式。Secondary Region 也可以通过写转发将写操作转发到Primary Region 落地。王瑞标出了很多关于Global Database 和写转发的参数供研究, 如写转发窗口大小等。非关系型数据库使用DynamoDB Global Table, 全球任意区域写入的数据都是一致的, 通过Last Writer Wins 策略解决数据冲突。如果用户想避免数据冲突, 可以对不同区域的数据加不同前缀。

接下来,37Games 的运维工程师张辉分享了他们在亚马逊云科技上多区域多活的实践。37Games 是国内 的出海游戏公司,2023 年的流水应该排在全国前三名。旗下热门游戏《阿瓦雷斯》的总流水已达100 亿元。对于游戏平台而言, 每分钟的可用率对收入的影响都是巨大的, 他们曾经遭遇过2-3 分钟的故障就造成了数百万元的损失。因此, 他们对平台的稳定性有着极高的要求, 必须在15 分钟内将故障恢复, 无论是单个区域还是整个区域级别的故障。

他们利用了Aurora 的写转发和DynamoDB Global Table 功能。当前架构是将99% 的流量写入主区域的Aurora 数据库,1% 的流量通过写转发写入备区域的Aurora 数据库。为了解决用户漂移导致的会话数据丢失问题, 他们使用DynamoDB Global Table 在全球范围内同步会话数据。 每个季度他们都会进行一次切换演练, 将100% 流量切换到备区域。首先通过安全组阻断主区域的写入流量, 确保数据一致性。然后通过Aurora 非计划Failover 操作将备区域提升为主区域, 整个过程只影响业务42 秒。

由于Aurora 是托管服务, 在Failover 后它会自动重建原主区域数据库, 并从新主区域追加数据, 重建时间取决于数据大小, 他们的300GB 测试数据需要2.5 小时重建。但由于业务流量已全部切换到新主区域, 重建时间不会影响业务, 真正影响业务的只有42 秒的Failover 时间。

这种架构的优势是:1) 满足15 分钟恢复要求;2) 可根据用户分布动态调整主备流量比例, 提高扩展性;3) 快速应对合规要求将数据迁移到特定区域, 而不是从零开始部署需要半个月到一个月。

总之, 通过利用亚马逊云科技的CloudFront 、Route 53 、Aurora Global Database 、DynamoDB Global Table 等服务和功能,37Games 实现了游戏平台的高可用, 满足了业务持续运营的需求, 保障了收入, 并提高了合规性和扩展性。这印证了亚马逊云科技在游戏行业的稳定性和可靠性, 是游戏公司值得信赖的云服务提供商。

下面是一些演讲现场的精彩瞬间:

亚马逊云科技中国峰会2024 上, 演讲者介绍了游戏平台服务以及在亚马逊云科技上实现多区域容灾的架构方案。

亚马逊云科技全球游戏公司的首选,为关键平台服务提供稳定可靠的云计算解决方案。

亚马逊云科技在全球范围内实现了高可用性和灾难恢复能力, 确保在15 分钟内恢复服务

亚马逊云科技中国峰会2024: 通过Aurora MySQL 数据库解决方案,99% 流量写入主库,1% 流量写入重叠点后转发至主库, 再复制到备库, 实现高可用性读写。

在亚马逊云科技中国峰会2024 上, 演讲者介绍了如何利用DynamoDB 的全球数据库同步功能解决用户漂移问题, 确保用户登录状态不会因DNS 解析导致的流量分发变化而丢失。

亚马逊云科技中国峰会2024 演讲中, 演讲者详细解释了在Aurora 数据库发生故障时如何进行非故障切换操作, 并指出该操作大约需要42 秒的时间来恢复业务。

亚马逊云科技为客户提供了快速应对合规检查的解决方案, 只需在分钟级别将数据切换到新环境, 节省了大量时间和资源。

总结

亚马逊云科技为游戏行业提供了稳定可靠的多区域容灾解决方案。游戏平台服务作为游戏的核心支撑系统, 其高可用性至关重要。亚马逊云科技通过良好的架构设计、全球骨干网络和多种数据库服务, 实现了跨区域的数据同步和容灾能力。

三七互娱作为一家领先的游戏公司, 采用了亚马逊云科技的多区域多活架构。他们利用Aurora 数据库实现主备切换, 通过写转发确保数据一致性; 使用DynamoDB 全球表解决用户漂移问题。每个季度, 三七互娱都会进行切换演练, 验证架构的可靠性, 确保故障发生后15 分钟内恢复业务。这种架构不仅提高了可用性和扩展性, 还有助于满足不同国家的数据合规要求。

亚马逊云科技为游戏企业提供了稳定可靠的基础设施支持, 帮助他们构建高可用、高扩展的多区域容灾架构, 应对各种挑战。通过实践, 三七互娱证明了这种架构的价值, 为游戏行业树立了典范。

2024 年 5 月 29 日,亚马逊云科技中国峰会在上海召开。峰会期间,亚马逊全球副总裁、亚马逊云科技大中华区总裁储瑞松全面阐述了亚马逊云科技如何利用在算力、模型、以及应用层面丰富的产品和服务,成为企业构建和应用生成式 AI 的首选。此外,活动还详细介绍了亚马逊云科技秉承客户至尚的原则,通过与本地合作伙伴一起支持行业客户数字化转型和创新,提供安全、稳定、可信赖的服务,以及持续深耕本地、链接全球,助力客户在中国和全球化发展的道路上取得成功。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70038688/viewspace-3018382/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2024-05-21

  • 博文量
    679
  • 访问量
    564326