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

设置队组容量限制

队组大小由队组包含的实例数确定。每个队组都有一个定义的最小和最大限制,您可以根据需要为您的游戏设置这些限制。所有更改队组容量的请求 (无论是通过自动扩展或手动调整) 都不得超过当前限制。默认情况下,新队组的限制设置为最少 0 个实例,最多 1 个实例。在扩展队组之前,您需要调整队组的限制。

如果您自动扩展队组,最大限制可让 Amazon GameLift 根据需要扩展队组以适应玩家需求,同时防止托管成本失控,这类情况在 DDOS 期间可能发生。将 CloudWatch 设置为在容量接近最大限制时发出警报,这样,您就可以评估情况并根据需要手动调整。(您也可以设置账单提醒来监控 AWS 成本。) 如果您希望确保您始终具有一定的托管可用性,则最小限制很有用。

限制也适用于手动扩展队组。在可以将队组容量调整为超出限制范围之外的值之前,您必须更改限制。由于队组容量对游戏可用性和玩家体验具有此类重大影响,因此限制功能对容量提供了另一层控制。

您可以在 Amazon GameLift 控制台中或使用 AWS CLI 设置队组的容量限制。队组的状态必须为活动状态

设置容量限制 (控制台)

  1. https://console.amazonaws.cn/gamelift/ 打开 Amazon GameLift 控制台。

  2. Fleets (队列) 页面上,单击活动队列的名称以打开队列的详细信息页面。(您也可以通过 Dashboard (控制面板) 访问队列的详细信息页面。)

  3. 打开 Scaling (扩展) 选项卡以查看历史扩展指标,并查看或更改当前设置。扩展设置位于指标图表下方。

  4. Instance Limits (实例限量) 下,设置最小和最大实例计数。对于每项控制措施,提交您的更改,方法是单击复选标记按钮

    如果队组的当前所需实例计数超出了新的限制范围,您将收到错误。在这种情况下,您必须首先调整队组的所需实例计数,以使它在新的限制范围之内。这可以在 Scaling (扩展) 选项卡上完成。如果队组使用自动扩展,您需要禁用自动扩展,手动调整所需实例计数和设置新的限制范围,然后重新启用自动扩展。

新的限制会立即反映在 Scaling (扩展) 选项卡顶部的图表中。

设置容量限制 (AWS CLI)

  1. 检查当前容量设置。在命令行窗口中,使用 describe-fleet-capacity 命令以及要更改其容量的队组的队组 ID。此命令将返回 FleetCapacity 对象,其中包括当前实例计数和容量限制。确定新的实例限制是否将适应当前所需的实例设置。

    aws gamelift describe-fleet-capacity --fleet-id <unique fleet identifier>
  2. 更新限制设置。 在命令行窗口中,使用带有以下参数的 update-fleet-capacity 命令。您可以使用此同一个命令同时调整实例限量和所需的实例计数。

    --fleet-id <unique fleet identifier> --max-size <maximum capacity for auto-scaling> --min-size <minimum capacity for auto-scaling> --desired-instances <fleet capacity as an integer> [Optional]

    例如:

    aws gamelift update-fleet-capacity --fleet-id fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa --max-size 10 --min-size 1 --desired-instances 10

    可复制版本:

    aws gamelift update-fleet-capacity --fleet-id fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa --max-size 10 --min-size 1 --desired-instances 10

如果请求成功,将返回队组 ID。如果新的 max-sizemin-size 值与当前 desired-instances 设置冲突,则会返回错误。