View a markdown version of this page

管理扩展 亚马逊 GameLift 服务器 To/From 零号舰队 - 亚马逊 GameLift 服务器

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

管理扩展 亚马逊 GameLift 服务器 To/From 零号舰队

Amazon GameLift Servers支持根据游戏会话活动自动扩展到零实例或从零实例缩放。此托管容量选项允许您的队列位置在规定的无游戏会话活动时间段后缩减到零实例,并在请求游戏会话时自动向外扩展。

向零实例扩展和从零实例扩展具有以下几个优点:

  • 成本优化 — 通过在没有游戏会话活动时运行零实例来消除不活动期间的计算成本。

  • 自动反应式扩展 — 当请求游戏会话时,舰队位置会自动扩展到一个实例,无需手动干预。

  • 简化管理 — 无需根据预期的玩家需求或开发需求手动调整舰队容量 to/from 为零。

当您在队列上启用 Scale To/From Zero 时,Amazon GameLift Servers 会监控游戏会话活动并自动调整队列容量:

  • Scale-in 变为零 — 在配置的时间段内没有游戏会话活动后,将舰队位置Amazon GameLift Servers扩展到零实例。

  • Scale-out 从零开始 — 收到游戏会话创建请求时,将舰队位置Amazon GameLift Servers扩展到一个实例,从而恢复自动扩展。

  • 持续扩展 — 横向扩展后,队列将恢复使用配置的自动扩展策略来管理容量。

Scale-in 行为

Amazon GameLift Servers在配置的非活动期结束且没有游戏会话活动后,开始舰队位置的缩容流程。这被定义为以下时期:

  • 舰队所在地没有活跃的游戏会话。

  • 没有人要求在舰队所在地创建新的游戏会话。

在缩减期间,Amazon GameLift Servers将机队所在地的最小和所需容量设置为零,快速缩小规模以节省成本。

Scale-out 行为

当在舰队位置为零时收到游戏会话创建请求时:

  • Amazon GameLift Servers立即启动一个实例的横向扩展。

  • 尝试在其他舰队或舰队位置放置游戏会话可能会继续,具体取决于队列的配置(如果使用)。

注意

Scale-out 从零开始预置和初始化实例需要时间。在一段时间不活动之后,玩家在第一场游戏会话中的等待时间可能会更长。因此,此功能最适合与多地点舰队队列 and/or 搭配。

配置 To/From 零比例

To/From 零扩展是通过更新现有队列来配置的。

Console
  1. 打开 Amazon GameLift Servers 控制台。

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

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

  4. 在 “缩放” 下,选择要为其配置 to/from 零比例的每个位置,然后选择编辑。

  5. 在 “编辑扩展容量” 对话框中,为 “最小容量策略” 选择 “自动”,将 “之后将最小容量设置为 0” 的首选值(以分钟为单位),然后选择确认。

Amazon GameLift Servers然后,一旦在配置的持续时间内没有游戏会话活动,就会将选定的队列位置缩减到 0 个实例。此后,当在此位置发出游戏会话请求时,Amazon GameLift Servers将尽快向扩展一个实例。这个过程需要一点时间。

AWS CLI
  • 配置 to/from 零比例。在命令行窗口中,使用带有舰队 ID、位置和托管容量配置的 update-fleet-capacity 命令来配置零规模。 to/from

    aws gamelift update-fleet-capacity \ --fleet-id <fleet identifier> \ --location <location name> \ --managed-capacity-configuration ScaleInAfterInactivityMinutes=60,ZeroCapacityStrategy=SCALE_TO_AND_FROM_ZERO

    示例:

    aws gamelift update-fleet-capacity \ --fleet-id fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \ --location us-west-2 \ --desired-instances 5 \ --max-size 10 \ --managed-capacity-configuration ScaleInAfterInactivityMinutes=60,ZeroCapacityStrategy=SCALE_TO_AND_FROM_ZERO

如果您的请求成功,则Amazon GameLift Servers返回更新的容量配置。Amazon GameLift Servers然后,一旦在配置的持续时间内没有游戏会话活动,就会将选定的队列位置缩减到 0 个实例。此后,当在此位置发出游戏会话请求时,Amazon GameLift Servers将尽快向扩展一个实例。这个过程需要一点时间。

最佳实践

使用 Scale To/From Zero 时,请考虑以下建议:

  • 设置适当的非活动周期 -平衡成本节省与扩展周期的频率。in/scale缩短扩展到零的等待时间可以最大限度地节省成本,但会导致更频繁的冷启动。

  • 适用于可预测的工作负载 — Scale To/From Zero 最适合具有明显不活动时间的游戏,例如 development/test 环境或非高峰时段不同的游戏。

  • 监控 CloudWatch 指标 — 跟踪队列扩展事件和游戏会话放置时间,以优化您的配置。

  • 与扩展策略相结合 -将 Scale To/From Zero 与基于目标或基于规则的自动扩展结合使用,实现全面的容量管理。