创建游戏会话队列 - Amazon GameLift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

创建游戏会话队列

队列用于借助多个实例集和区域中的最佳托管资源来放置新游戏会话。要了解有关为您的游戏构建队列的更多信息,请参阅设计游戏会话队列

在游戏客户端中,新的游戏会话在启动时,通过使用放置请求加入到队列中。在创建游戏会话中了解有关游戏会话放置的更多信息

更新队列中的队列目标时,有一个很短的过渡期(最多 30 秒),在此期间,放置在队列目标上的游戏会话可能仍会出现在旧队列上。

Console
  1. Amazon GameLift 控制台的导航页面中,选择队列。

  2. Queues (队列) 页面中,选择 Create queue (创建新队列)。

  3. 创建队列页面上,在队列设置下执行以下操作:

    1. 对于 Name(名称),输入新名称。

    2. 超时中,输入您希望 Amazon GameLift 在停止之前尝试放置游戏会话的时长。 将继续在任意实例集中搜索可用资源,直到请求超时。

    3. (可选)对于玩家延迟策略,请输入 Amazon GameLift 应在定义的最大延迟内寻找资源的时间。添加其他策略以逐步放宽最大延迟。要添加其他策略,请选择添加策略

  4. 游戏会话放置位置下,选择要包含在队列中的位置。默认情况下,包括所有位置。队列中的所有实例集必须具有相同的证书配置(GENERATED 或 DISABLED)。队列中的所有机群必须运行与使用该队列的游戏客户端相兼容的游戏生成文件。

  5. Destinations 下,向队列添加一个或多个目标。

    1. 选择 Add destination

    2. 选择目的地所在的位置

    3. 选择目的地的类型。

    4. 在实例集或别名的结果列表中,选择要添加的实例集或别名。

    5. 如果您有多个目的地,请通过将六点图标拖到目的地左侧来设置默认顺序。 会按照此顺序搜索可用资源的目标以放置新的游戏会话。

  6. 对于游戏会话放置优先级,请添加并拖动延迟成本目的地位置值,以定义 Amazon GameLift 如何对队列中的队列进行优先排序。有关确定实例集优先级的更多信息,请参阅优先考虑游戏会话放置

  7. 将位置添加到您的位置顺序中,然后将其拖动到队列应使用的优先级。如果位置是游戏会话放置的最后优先级,那么 Amazon GameLift 会将其用作决胜局。

  8. (可选)在事件通知设置下,执行以下操作:

    1. 选择或创建 SNS 主题以接收与展示位置相关的事件通知。有关事件通知的更多信息,请参阅请参阅设置游戏会话置放通知。

    2. 添加自定义事件数据以附加到该队列创建的事件。

  9. [可选] 添加标签。有关标记的更多信息,请参阅标记 资源()。

  10. 选择创建

Amazon CLI
例 创建队列

以下示例创建一个具有以下配置的游戏会话队列:

  • 超时五分钟

  • 两个实例集目的地

  • 筛选仅允许在us-east-1、中的位置us-east-2us-west-2,以及 ca-central-1

  • 根据成本确定目的地的优先级,然后按定义的顺序排列位置的优先级。

aws gamelift create-game-session-queue \ --name "sample-test-queue" \ --timeout-in-seconds 300 \ --destinations DestinationArn="arn:aws:gamelift:us-east-1:111122223333:fleet/fleet-772266ba-8c82-4a6e-b620-a74a62a93ff8" DestinationArn="arn:aws:gamelift:us-east-1:111122223333:fleet/fleet-33f28fb6-aa8b-4867-85b4-ceb217bf5994" \ --filter-configuration "AllowedLocations=us-east-1, ca-central-1, us-east-2, us-west-2" \ --priority-configuration PriorityOrder="LOCATION","DESTINATION",LocationOrder="us-east-1","us-east-2","ca-central-1","us-west-2" \ --notification-target "arn:aws:sns:us-east-1:111122223333:gamelift-test.fifo"
注意

您可以通过使用实例集或别名 ID 调用 describe-fleet-attributesdescribe-alias 来获取实例集和别名 ARN 的值。

如果 请求成功,则 将返回包含新队列配置的 GameSessionQueue 对象。您现在可以使用 StartGameSessionPlacement 向队列提交请求。

例 使用玩家延迟策略创建队列

以下示例创建一个具有以下配置的游戏会话队列:

  • 超时十分钟

  • 三个实例集目的地

  • 您可以设置玩家延迟策略以:

aws gamelift create-game-session-queue \ --name "matchmaker-queue" \ --timeout-in-seconds 600 \ --destinations DestinationArn=arn:aws:gamelift:us-east-1::alias/alias-a1234567-b8c9-0d1e-2fa3-b45c6d7e8910 \ DestinationArn=arn:aws:gamelift:us-west-2::alias/alias-b0234567-c8d9-0e1f-2ab3-c45d6e7f8901 \ DestinationArn=arn:aws:gamelift:us-west-2::fleet/fleet-f1234567-b8c9-0d1e-2fa3-b45c6d7e8912 \ --player-latency-policies "MaximumIndividualPlayerLatencyMilliseconds=50,PolicyDurationSeconds=120" \ "MaximumIndividualPlayerLatencyMilliseconds=100,PolicyDurationSeconds=120" \ "MaximumIndividualPlayerLatencyMilliseconds=150" \

如果 请求成功,则 将返回包含新队列配置的 GameSessionQueue 对象。