

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

# 创建游戏会话队列
<a name="queues-creating"></a>

队列用于在多个实例集和位置放置新游戏会话。您的游戏通过向队列提交放置请求来启动新游戏会话。队列通过配置处理请求的指令进行设置。有关启动游戏会话放置请求的更多信息，请参阅[创建游戏会话](gamelift-sdk-client-api.md#gamelift-sdk-client-api-create)。

**创建游戏会话队列**

这些说明演示如何使用最小配置设置和默认设置创建一个简单可用的队列。自定义队列配置有多种选项可供选择。这些选项可根据游戏需求，助您实现最优放置位置。要了解有关为游戏自定义队列的更多信息，请参阅[自定义游戏会话队列](queues-design.md)。您可以随时更新大多数队列配置设置。

您可以使用 Amazon GameLift Servers 控制台或 Amazon CLI 创建游戏会话队列。

------
#### [ Console ]

在[Amazon GameLift Servers控制台](https://console.amazonaws.cn/gamelift/)中，选择要工作的 Amazon 区域。打开控制台左侧导航栏并选择**队列**。

1. 在**队列**页面中，选择**创建队列**以启动工作流。

1. 在**队列设置**下输入以下设置：

   1. 输入队列名称。此名称必须 Amazon Web Services 区域 是您在其中创建队列的唯一名称。

   1. 保留默认**超时**设置，即 600 秒（或 10 分钟）。此值控制 Amazon GameLift Servers 尝试创建新游戏会话的时间长度，超过该时间后将停止尝试。Amazon GameLift Servers 会持续搜索可用资源，直至请求超时。您可以随时更新队列超时设置。

   1. 跳过**玩家延迟策略**部分。队列仅在接收包含玩家延迟数据的放置请求时才会使用延迟策略。您可随时向队列添加延迟策略。有关创建延迟策略的更多信息，请参阅[创建玩家延迟政策](queues-design-latency.md)。

1. 跳过**游戏会话放置位置**部分，即可使用**所有位置**的默认设置。此设置允许您创建队列可放置位置的允许列表（也称为筛选配置）。有关按位置和筛选配置划分优先级的更多信息，请参阅[按位置确定放置优先级](queues-design-priority.md#queues-design-priority-custom-location)。

1. 在**目标顺序**下，向队列添加一个或多个实例集。您可以使用舰队 IDs 或 ARNs，或者使用舰队别名来识别舰队。添加多个实例集时，请注意它们应运行相似的游戏版本，并且与使用此队列的任何游戏客户端兼容。此外，队列中的所有实例集必须具有相同的证书配置。

   1. 选择创建实例集或别名的**区域**。对于多位置实例集，这是指“主”区域。

   1. 对于目标**类型**，选择实例集或别名。

   1. 您选择的区域和类型将填充现有实例集或别名的下拉列表。选择其中一项作为队列目标。

   1. 要为队列指定其他实例集或别名，请选择**添加目标**并重复上述步骤。

   1. 添加目的地列表后，使用该 drag-and-drop功能对目的地进行重新排序。 Amazon GameLift Servers按目的地对展示位置进行优先排序时使用此顺序。

1. 跳过**游戏会话放置优先级**部分以保持默认优先级顺序。此设置允许您自定义 Amazon GameLift Servers 为新游戏会话放置选择可用托管资源的位置。有关确定放置优先级的更多信息，请参阅[优先考虑游戏会话放置](queues-design-priority.md)。您可以随时更新队列的放置优先级。

1. 在**位置顺序**下，保留默认值。当按实例集位置确定优先级时，可使用此设置。它提供了可供使用的位置顺序。使用默认优先级设置时，如果首选目标是拥有多个位置的实例集，则位置将用作决胜因素。

1. 跳过可选的**事件通知设置**部分。对于处理大量放置请求的队列，事件通知是必需的。对于处理少量队列（例如用于开发或测试目的），您可以通过轮询来跟踪放置请求的状态[DescribeGameSessionPlacement](https://docs.amazonaws.cn/gameliftservers/latest/apireference/API_DescribeGameSessionPlacement.html)。有关更多详细信息，请参阅[请参阅设置游戏会话置放通知。](queue-notification.md)。您可以随时更新队列的事件通知设置。

1. 选择**创建**以生成一个自定义程度最低的新队列。

------
#### [ Amazon CLI ]

**Example 创建队列**  
以下示例创建一个具有以下配置的游戏会话队列：  
+ 超时五分钟。
+ 两个实例集目标。
+ 筛选后仅允许在以下位置放置：`us-east-1`、`us-east-2`、`us-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="COST","LOCATION",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"
```

**注意**  
您可以通过使用队列[describe-fleet-attributes](https://docs.amazonaws.cn/cli/latest/reference/gamelift/describe-fleet-attributes.html)或别名 ID 调用 desc [ribe-alias 来获取舰队和别名](https://docs.amazonaws.cn/cli/latest/reference/gamelift/describe-alias.html) ARN 值。

如果`create-game-session-queue`请求成功，则Amazon GameLift Servers返回具有新队列配置的[GameSessionQueue](https://docs.amazonaws.cn/gamelift/latest/apireference/API_GameSessionQueue.html)对象。现在，您可以使用向队列提交请求[StartGameSessionPlacement](https://docs.amazonaws.cn/gamelift/latest/apireference/API_StartGameSessionPlacement.html)。

**Example 使用玩家延迟策略创建队列**  
以下示例创建一个具有以下配置的游戏会话队列：  
+ 超时十分钟
+ 三个实例集目的地
+ 您可以设置玩家延迟策略以：

```
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" \
```

如果`create-game-session-queue`请求成功，则Amazon GameLift Servers返回具有新队列配置的[GameSessionQueue](https://docs.amazonaws.cn/gamelift/latest/apireference/API_GameSessionQueue.html)对象。

------