基于目标的自动扩缩 - Amazon GameLift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

基于目标的自动扩缩

Amazon GameLift 的基于目标的自动扩缩功能会根据实例集指标 PercentAvailableGameSessions 调整容量级别。该指标表示实例集的可用缓冲区应对玩家需求激增的情况。

维护容量缓冲区的主要原因是玩家等待时间。当游戏会话槽准备就绪并等待时,新玩家进入游戏会话需要数秒钟。如果没有资源可用,玩家必须等待现有游戏会话结束或新资源变为可用。启动新实例和服务器进程可能需要数分钟时间。

在设置基于目标的自动扩缩时,需指定您希望实例集维护的缓冲区的大小。由于 PercentAvailableGameSessions 衡量的是可用资源的百分比,因此实际缓冲区大小是实例集总容量的百分比。Amazon GameLift 添加或删除实例以保持目标缓冲区大小。如果缓冲区较大,则会最大程度地减少等待时间,但您也要为可能未使用的额外资源付费。如果您的玩家更能容忍等待时间,则可通过设置较小的缓冲区来降低成本。

设置基于目标的自动扩缩

Console
  1. 打开 Amazon GameLift 控制台

  2. 在导航窗格中,选择托管实例集

  3. 实例集页面上,选择活跃实例集的名称以打开该实例集的详情页面。

  4. 选择扩展选项卡。此选项卡显示实例集的历史扩展指标,并包含用于调整当前扩展设置的控件。

  5. 扩展容量下,检查最小大小和最大大小限制是否适合实例集。启用自动扩缩后,容量可能会在这两个限制之间调整。

  6. 基于目标的自动扩缩策略中,选择编辑

  7. 编辑基于目标的自动扩缩策略对话框中,在可用游戏会话百分比中,设置要保持的百分比,然后选择确认。在您确认设置后,Amazon GameLift 会在基于目标的自动扩缩策略下添加新的基于目标的策略。

Amazon CLI
  1. 设置容量限制。使用 update-fleet-capacity 命令设置限制值。有关更多信息,请参阅设置 Amazon GameLift 的容量限制

  2. 创建新策略。打开命令行窗口,并使用 put-scaling-policy 命令来设定您的策略的参数设置。要更新现有策略,请指定策略的名称并提供完整版本的更新策略。

    --fleet-id <unique fleet identifier> --name "<unique policy name>" --policy-type <target- or rule-based policy> --metric-name <name of metric> --target-configuration <buffer size>

    示例:

    aws gamelift put-scaling-policy \ --fleet-id "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa" \ --name "My_Target_Policy_1" \ --policy-type "TargetBased" \ --metric-name "PercentAvailableGameSessions" \ --target-configuration "TargetValue=5"