Amazon GameLift
开发人员指南 (版本 )
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

选择计算资源

Amazon GameLift 使用 Amazon Elastic Compute Cloud (Amazon EC2) 资源(称为实例)来部署您的游戏服务器以及托管玩家的游戏会话。设置新队组时,您将决定您的游戏所需的实例类型以及如何对其运行游戏服务器进程 (通过运行时配置)。当队组已激活且准备好托管游戏会话后,您可以随时添加或删除实例以容纳更多或更少的玩家。队组中的所有实例都使用相同类型的资源和相同的运行时配置。您可以编辑队组的运行时配置,但无法更改资源的类型。

在为队组选择资源时,您需要考虑几个因素,包括游戏操作系统、实例类型 (计算硬件) 以及是使用按需实例还是 Spot 实例。本主题的后面将逐个讨论这些问题。请记住,Amazon GameLift 的托管成本主要取决于您使用的资源的类型。了解有关 Amazon GameLift 定价的更多信息。

操作系统

Amazon GameLift 支持在 Microsoft Windows 或 Amazon Linux 上运行的游戏服务器生成包(请参阅受支持的游戏服务器操作系统)。在将游戏生成包上传到 Amazon GameLift 时,您可以指定该游戏的操作系统。当您创建一个队组以部署游戏生成包时,Amazon GameLift 将使用该生成包的操作系统自动设置实例。

资源的成本取决于所使用的操作系统。详细了解可用于受支持的操作系统的资源:

实例类型

队组的实例类型决定了将用于队组中的每个实例的硬件类型。实例类型提供了计算能力、内存、存储和网络功能的不同组合。利用 Amazon GameLift,您有各种实例类型选项可供选择。查看可用实例类型的列表或打开 Amazon GameLift 控制台中的 Service limits (服务限制) 页面,以查看实例类型、当前使用率和使用量限额。要了解有关每个实例类型的功能的更多信息,请参阅 Amazon EC2 实例类型。请注意,提供的实例类型可能因区域而异。

在为您的游戏选择实例类型时,请考虑以下因素:(1) 您的游戏服务器生成包的计算要求,以及 (2) 您计划在每个实例上运行的服务器进程的数量。您可能能够通过使用较大的实例类型在每个实例上运行多个服务器进程,这可以减少满足玩家需求所需的实例数。但是,较大的实例类型的成本更高。了解有关在一个队组上运行多个进程的更多信息。

按需实例与 Spot 实例

创建新队组时,您可将队组类型指定为使用按需Spot 实例。按需实例和 Spot 实例基于选择的实例类型提供了完全相同的硬件和性能,并且以完全相同的方式进行配置。它们的差异在于可用的供应量以及成本。

按需实例

按需实例就是您请求一个实例,然后系统为您创建该实例。您始终可以在需要按需实例时获取它并将它保存任意长的时间。按需实例具有固定成本;您将为使用这些实例的时间量付费,并且没有任何长期承诺。

Spot 实例

Spot 实例提供了按需实例的一种非常经济的替代品。Spot 实例使用备用 AWS 计算容量,因此 Spot 实例的成本可能比按需实例低得多。使用 Spot 实例有一个缺点:与按需实例不同, Spot 实例的价格基于每个区域中的每个实例类型的当前供需情况而波动。因此,当 AWS 需要容量退回时,Spot 实例可能被 AWS 中断并发出持续两分钟的通知。

但是,利用 Amazon GameLift FleetIQ,您可以在保持较高的游戏服务器可用性的同时节省成本。在放置新游戏会话时,FleetIQ 将设定 Spot 实例的使用的优先顺序以基于以下两点寻找最佳游戏服务器:(1) 最能节省成本的实例以及 (2) 历史上中断率最低的实例。

您可以使用一组队列指标以及 Spot 实例上特定于实例的指标来评估 FleetIQ 性能。了解有关 Amazon GameLift 指标的更多信息。您还可以使用 Amazon GameLift 控制台查看任何实例类型的定价历史记录。Spot history (Spot 历史记录) 页面将为按需和 Spot 实例的定价绘制图表并计算 Spot 实例的相对成本节省。使用控件可选择实例类型、操作系统和时间范围。

Spot 队组集成指南中了解有关如何使用 Spot 实例的更多信息。

实例服务限制

AWS 对可能通过 AWS 账户使用的 Amazon EC2 实例(按需或 Spot)的数量进行了限制。每个实例类型具有每个账户允许的最大数量,此限制因 AWS 区域而异。每个账户还有实例总数的限制,不论使用什么实例类型。您可以通过多种方式访问有关限制的信息:

  • AWS 服务限制页面上查看 Amazon GameLift 以及所有其他 AWS 服务的一般限制。

  • Amazon GameLift 控制台中查看特定区域的限制:选择区域,然后从 Amazon GameLift 菜单中选择 Service limits (服务限制)。您还可以查看该区域中当前正在使用的实例总数。

  • 使用 Amazon GameLift API 操作 DescribeEC2InstanceLimits 检索每个 AWS 账户(按区域)的最大实例数。此操作还返回该区域中当前处于活动状态的实例数量。

如果您需要的实例数超出 AWS 服务允许的限制,您可以在 AWS 管理控制台的 Amazon GameLift 服务限制页面上请求增加限制。