AWS GameLift 现已支持容器。这对您的游戏来说足够了吗?

从 2024 年 11 月开始,Amazon Web Service (AWS) GameLift 现已支持全托管容器。包括 Edgegap 在内的业内许多公司多年来一直指出这是该平台的一个缺口。这终于让开发者能够使用容器(例如 Docker 容器)在 GameLift 的编排系统上部署游戏服务器,以托管并扩展多人游戏服务器。

让我们拆解一下这一点,更重要的是,探讨加入容器是否足以真正提升多人游戏编排和玩家在线游玩体验。

AWS GameLift 面向多人游戏的容器是什么

通过使用与 GameLift 编排集成的 Amazon Elastic Container Service (ECS),游戏开发者可以管理波动的玩家负载并简化部署。

这种设置使开发者能够自定义游戏托管环境、自动扩缩容,并处理多人游戏所必需的复杂网络需求。

GameLift 还增强了玩家匹配和会话管理,提供用于优化玩家体验的工具。借助这种基于容器的服务架构,开发者获得了运营灵活性,能够更专注于游戏玩法而非基础设施。

在 GameLift 上使用 ECS 容器进行多人游戏时需要重点关注什么

AWS GameLift 支持容器,但对于专注于降低托管成本并最大化玩家体验的游戏工作室来说,这一设置中有几个方面值得更深入审视,即分配、扩缩容、区域分布、匹配以及集成复杂度。

分配

分配是指游戏服务器在虚拟机 (VM) 上占用了多少空间。虽然 AWS 的确记录了每个容器组的 vCPU 和内存分配,但游戏工作室需要投入大量集成工作,这意味着在实践中优化虚拟机上游戏服务器的“填充率”并最大化每个 vCPU 的利用率仍然具有挑战性。

这种复杂性意味着工作室最终可能会为未使用的容量付费,同时还要承担管理回填的额外 DevOps 成本。

GameLift 的架构还要求对虚拟机进行预热,以便容器可以随时启动,这意味着舰队容量的一部分必须始终作为缓冲保留。缓冲设置过低会导致扩容延迟增加,直接影响玩家体验。值得注意的是:GameLift 的默认缓冲设置为 10%,这通常低于工作室在生产环境中的实际需求,尤其是对于玩家需求波动或突发明显的游戏。大多数工作室都需要提高该值,这会增加其舰队运行的实际成本。你可以使用 Edgegap 的计算器,对比不同流量场景下缓冲容量选择如何影响整体托管成本。

如果由于缓冲配置不当导致服务器超载,玩家将会遇到延迟和掉帧。这会削弱专用服务器编排的核心价值。

在 Edgegap,我们以能够帮助游戏开发者优化其游戏服务器并细分其 vCPU 使用以降低整体成本而自豪。

扩缩容

GameLift 的文档确实涵盖了容器舰队的扩缩容,包括通过控制台或 SDK 进行基于目标的自动扩缩容。然而,对于希望优化容器舰队扩缩容行为的工作室而言,仍有若干实际问题缺乏充分文档说明,尤其是扩缩容在实例层面如何与容器预热交互。

如果容器已在实例上预先启动,既然容器已经在消耗实例资源,GameLift 如何判定何时扩容?如果容器是按需即时部署,实际速度如何(纵向扩展),以及在多个区域同时运行时表现如何(横向扩展)?

Edgegap 提供即时容器部署,保证可实现每分钟最多 40 次游戏服务器部署,并可持续 60 分钟。AWS 是 Edgegap 的供应商之一,但 Edgegap(截至撰写时)还使用另外 16 家供应商,以便在所需位置对你的游戏进行纵向扩展。

此外,Edgegap 的“冷启动”服务器平均仅需 3 秒,这意味着更多游玩时间、减少等待游戏服务器部署的时间。与开发者在其他平台上常报告的冷启动时长相比,这在玩家等待时间方面是一个有意义的改进。

与 AWS 不同,Edgegap 可按需将你的游戏服务器部署到其全球 615+ 个位置。对于美国东海岸玩家来说,在 AWS-US-East 扩容固然不错,但现实是,你的游戏托管需要在全球范围内动态扩缩,才能为全球玩家带来出色的在线游玩体验。

区域分布

公共云(包括 AWS)会让你为虚拟机付费,无论你是否在其上运行游戏服务器。你想在哪个区域建立存在,就要为哪个区域付费。

想要 10 个区域——这对于“AA”或“triple-I 独立游戏”来说是将延迟保持在足够低、让玩家以较少抱怨享受游戏的最低配置?那么至少需要支付 10 x C5 large VM 的费用。

这种传统托管方式意味着,即使你是服务器上的共租户并且为其全额付费,这种成本结构也会显著放大你的托管开支。Edgegap 的定价页面提供了直接对比

像 Edgegap 这样的新一代游戏服务器托管编排服务改用按使用付费。这意味着你只有在玩家游玩时才付费(即部署期间),并且全球每次都是同一价格。这代表了相较传统公共云编排所需预留容量计费模型的一次重要转变。

此外,借助全球最大的边缘网络,Edgegap 能够实现相较传统公共云编排平均 58% 的延迟降低

与對局配對 / 大厅配合使用

另一个挑战是,你的匹配器或大厅需要选择最佳位置。你将不得不在匹配器中创建区域;而你越想通过在 AWS 中增加区域来降低延迟,你的匹配排队时间就会越长,因为你将无法进行跨区域匹配。

Edgegap 的匹配器是少数默认原生支持基于延迟参数的匹配器之一(截至撰写时),这有助于你为玩家部署最低延迟的游戏服务器。

集成与使用的易用性

AWS 针对该方案的入门文档本身就跨越多份指南,涵盖 ECS、ECR、CodeBuild 和 CloudFormation 配置,这反映出搭建可用于生产的容器舰队所涉及的真实复杂度。

完成所有配置本身就是一项重大工程,而当集成工作完成后,也只是开始。你至少需要一名工程师或 DevOps 专业人员来监控并管理流量波动。

“即时”游戏服务器的优势在于,它可以加载数据并实现完全自定义(如用户生成内容 UGC),从而完全绕开这种复杂性。例如,Six Days of Fallujah 会在游戏服务器部署期间加载其完全程序生成的地图,HIBERWORLD 也会为其数十万种由 UGC 开发的游戏类型和地图执行同样做法。

仅有容器对 AWS GameLift 来说足够吗?

对于当前正在使用 GameLift、并希望借助容器易用性迁移到容器的游戏来说,这对其场景可能已经足够。

如果你想要更灵活的解决方案,能够以即时、按需付费的方式利用数百个位置,而且无需自行管理任何基础设施,那么你应当关注新一代游戏服务器编排服务,包括 Edgegap

书写者

Edgegap团队

Get your Game Online Easily & in Minutes

立即开始集成!

轻松在线游戏
且在几分钟内