首页 » 排名链接 » 【看出海】亚马逊云科技为游戏开发商提供多种现代化部署选择(部署游戏架构开发商实例)

【看出海】亚马逊云科技为游戏开发商提供多种现代化部署选择(部署游戏架构开发商实例)

乖囧猫 2024-11-23 04:43:55 0

扫一扫用手机浏览

文章目录 [+]

关键字: [出海日城市巡展, GameLift, 游戏战斗服应用现代化, 弹性扩容管理, 集中服务管理, 高可靠运行, 计算平台演进]

本文字数: 2000, 阅读完需: 10 分钟

导读

黄继东老师在”游戏行业论坛”上分享了关于游戏战斗服应用现代化的主题。
他介绍了亚马逊云科技为游戏行业提供的各种解决方案,包括基于实例托管、容器托管和无服务器架构的部署方案,以及相关服务如EC2、Auto Scaling、EKS、Fargate、Lambda、GameLift等。
这些解决方案能够帮助游戏公司实现弹性扩容、集中管理、高可靠运行、降低成本、提高性能等优势。
他还分享了一些游戏公司如Epic Games、卡普空、漫威Snap等采用亚马逊云科技解决方案的成功案例。

【看出海】亚马逊云科技为游戏开发商提供多种现代化部署选择(部署游戏架构开发商实例) 排名链接
(图片来自网络侵删)
演讲精华

以下是

在当今时代,游戏行业的快速发展对基础设施的需求也日益增长。
亚马逊云科技资深解决方案架构师黄继东老师就游戏战斗服应用现代化的主题为我们进行了深入探讨。
他首先指出,90%以上的大型游戏开发商都选择使用亚马逊云科技的基础设施来运营他们的游戏。
这一点可以从侧面反映出亚马逊云科技在游戏行业的领先地位。
亚马逊云科技在全球拥有33个区域、105个可用区,这为实现就近部署奠定了基础。
无论玩家身处何方,亚马逊云科技都能为他们提供低延迟的游戏体验。
此外,亚马逊云科技还在全球部署了超过400个边缘节点,遍布数百个城市,让玩家可以快速接入亚马逊的骨干网络,有效避免了公共互联网可能带来的延时和抖动问题。

在部署游戏战斗服时,开发商面临着诸多挑战。
首先是弹性扩容的需求,开发商需要能够灵活地管理游戏服和战斗服,并进行全球区域容量的配置和管理。
其次是集中管理的需求,开发商需要构建中央服务,以统一管理全球各地的游戏会话放置和匹配。
最后是可靠运行的需求,开发商希望游戏服能够运行在高可靠、可扩展的基础架构之上,确保稳定性。

为了解决上述挑战,计算平台也在不断演进。
最初,开发商使用物理服务器部署应用,需要预先规划资源,自动化程度较低,安装和部署过程耗时耗力。
随后,开发商开始使用云服务虚拟机,这在一定程度上解决了容量不足、扩容困难等问题,但开发、测试和生产环境可能存在不一致的情况。
为了彻底解决环境不一致的问题,容器化架构应运而生。
通过镜像的方式,容器化架构确保了开发、测试和生产环境的一致性。
如今,亚马逊云科技更是提供了Serverless的方式来构建游戏战斗服,开发商无需管理太多基础设施,可以将精力集中在游戏开发和创新上。

在游戏战斗服的部署上,开发商可以选择不同的方案。
第一种是基于实例托管的部署方案,使用EC2实例和Auto Scaling来管理和配置服务器。
第二种是基于容器托管的部署方案,使用EKS、ECS和Fargate等服务部署容器。
第三种是Serverless的部署方案,使用Lambda等Serverless服务,无需管理基础设施。

黄继东老师对这三种部署方案进行了详细阐述。
在基于实例托管的部署方案中,典型的架构是将大厅服和周边功能(如钱包、排行榜等)部署在延时可接受的区域,因为这些功能对延时不太敏感。
而对延时敏感的战斗服则需要进行全球低延时部署。
值得一提的是,亚马逊云科技提供了600多种实例类型供开发商选择,包括ARM实例、Intel实例、通用型实例、内存型实例等,开发商可以根据游戏的开发语言和需求进行选型。

在管理服务器方面,开发商可以使用Auto Scaling。
Auto Scaling能够根据服务注册中心的服务状态自动终止故障节点并启动新节点,从而保证高可用性和故障恢复能力。
对于战斗组,Auto Scaling可以跟踪CPU和网络指标,进行自动弹性扩容,提高资源利用率。

Epic Games的堡垒之夜游戏就是一个很好的案例。
在2020年4月,堡垒之夜的注册用户数达到了3.5亿,相比2019年增加了近1亿。
为了满足大规模扩展的需求,Epic Games使用了高性价比的Graviton实例部署游戏服,并采用Auto Scaling进行扩缩容管理,在游戏玩家激增时自动扩容,在访问低峰时回收闲置资源,避免浪费。

接下来是基于容器托管的部署方案。
在这种方案中,典型的架构是将大厅服务、周边功能和战斗服打包成镜像,使用Kubernetes进行编排和管理。
对于HTTP协议,使用CloudFront进行加速;对于四层协议,使用Global Accelerator进行加速。
容器化架构的一大优势在于解决了开发、测试和生产环境不一致的问题。

根据CNCF的报告,超过2/3的用户将Kubernetes集群运行在亚马逊云科技上。
亚马逊云科技提供了Kubernetes托管服务EKS,使用原生合规的Kubernetes版本,可让客户安全可靠地运行Kubernetes集群。
EKS不仅解决了重复工作,还能帮助构建安全、稳定、可靠的应用。
EKS的控制面板部署在独立VPC中,设计为高可用,并提供可扩展性支持。

在EKS数据面板上,亚马逊云科技开源了Cluster Autoscaler(CA)项目,充分利用云能力进行快速扩容和部署。
CA使用HPA监控指标动态调整Pod数量,并根据Pending Pod的资源需求扩容节点,支持多种扩缩容场景,提供了灵活的计算选择。
CA默认拉起On-Demand实例,但可通过配置拉起Spot实例降低成本,也可配置拉起ARM实例。

卡普空就是一个很好的容器化实践案例。
2019年,卡普空实现了游戏战斗服的容器化改造,运营成本降低了23%到30%。
容器化带来了自动化运维、轻量快速启动等优势,加速了新功能的上线,而且开发、测试和生产环境保持一致,避免了环境差异带来的问题。

接下来讲解的是基于Serverless的部署方案。
漫威Snap游戏就采用了完全Serverless的架构,由Lambda、API Gateway、EventBridge、FlexMatch、DynamoDB等服务构建,同时在中国、美国、澳大利亚、爱尔兰和德国多个区域启动,架构采用事件驱动方式,可灵活调整API的调度、模块化和解耦。

Serverless架构的优势在于快速启动项目、无需大量运维人员;事件驱动架构灵活调整API调度、模块化解耦;贴近开发思维,像管理API一样管理整个架构。
在漫威Snap的架构中,玩家通过CloudFront快速接入,使用HTTP和WebSocket协议的API Gateway;对战请求通过Lambda写入FlexMatch进行匹配,匹配成功返回前端;对战过程通过WebSocket API Gateway反馈给玩家。

Lambda是亚马逊云科技在2014年推出的第一个Serverless服务,可自动响应任何规模,按代码执行时长计费,使用预置并发可实现毫秒级响应。
黄继东老师还介绍了Lambda的运行周期、冷启动问题及SnapStart优化方案,SnapStart可将Java函数冷启动时间从原来的5000多毫秒降低到500多毫秒,提升接近10倍。

GameLift是亚马逊云科技2016年推出的游戏服务器管理服务,具有低成本、低延时、高可用、高灵活等特点,可与现有架构无缝集成。
在漫威Snap案例中,该游戏完全采用Serverless和GameLift架构,数十人团队服务全球上千万玩家,每天承载数百万日活,将基础设施运维工作交给云供应商,专注于游戏开发创新。

除了使用GameLift的完整解决方案,开发商还可以选择只使用其中的FlexMatch组件,与现有架构集成。
当玩家发起对战请求时,请求通过API Gateway发送给Lambda,再由Lambda将请求写入FlexMatch进行匹配。
匹配成功后,FlexMatch会发布订阅通知,可由SNS或EventBridge捕获,再由Lambda将匹配结果写入目的地如DynamoDB,最终通过API Gateway返回给玩家。
开发商只需配置匹配规则,无需开发即可实现匹配系统。

最后,黄继东老师总结了游戏战斗服部署的决策流程。
如果不想管理基础设施,只想专注于开发创新,可采用Serverless服务和GameLift。
如果希望部署到容器,可使用ECS、EKS,甚至使用Fargate无需管理底层节点。
如果已运行在物理服务器或虚拟机上,可使用EC2和Auto Scaling进行扩缩容管理。

总的来说,这场演讲全面介绍了游戏战斗服应用现代化的不同部署方案,并分享了相关的最佳实践案例,为游戏开发者提供了宝贵的参考。
无论是基于实例托管、基于容器托管,还是基于Serverless的部署方案,都有其独特的优势和适用场景,开发商可以根据自身需求进行选择。
值得关注的是,随着云计算技术的不断发展,游戏行业的基础设施建设也将日益现代化,为玩家带来更加身临其境的游戏体验。

总结

游戏战斗服务器的现代化部署是一个重要的挑战。
亚马逊云科技为游戏开发商提供了多种灵活的部署选择,包括基于实例、容器和无服务器架构。
这些选择旨在满足不同的需求,如弹性扩展、集中管理和高可靠性运行。

首先,基于实例的部署方案利用 EC2 实例和 Auto Scaling 来管理和配置服务器。
这种方式可以根据需求动态扩展资源,并通过使用 Graviton 实例等方式提高成本效率。
Epic Games 的堡垒之夜就采用了这种方式。

其次,基于容器的部署方案使用 EKS、ECS 和 Fargate 等服务来编排和管理容器化的游戏服务。
这种方式解决了开发、测试和生产环境不一致的问题,并且可以利用开源工具如 Karpenter 实现自动扩缩容。
卡普空就成功地将游戏战斗服务器容器化,降低了运营成本。

最后,无服务器架构如 Lambda、API Gateway 和 GameLift 等服务,可以让开发团队专注于创新,而将基础设施管理交给云供应商。
漫威 SNAP 游戏就采用了完全无服务器的架构,仅靠数十人的团队就服务了全球上千万玩家。

总的来说,亚马逊云科技为游戏开发商提供了多种现代化部署选择,帮助他们实现弹性扩展、高可用性和降低运维成本的目标。
开发商可以根据自身需求选择最佳的部署方案。

相关文章

短篇小说:对决(伢子红玫瑰师傅乞丐警察)

作者:南春莲杠伢子本不姓杠,姓杜,大名杜有鹏。村里的会计造花名册的时候,将杜字的“土”旁写成了“工”旁,杜有鹏成了杠有鹏。村里的老...

排名链接 2025-02-10 阅读1252 评论0