

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 擴展Amazon GameLift Servers容器機群
<a name="containers-scaling"></a>

遊戲託管最具挑戰性的任務之一是擴展容量以滿足玩家需求，而不會浪費在您不需要的資源上。在受管容器機群中，您可以透過新增或移除機群執行個體來擴展機群容量。

當您建立新的機群時， Amazon GameLift Servers會將機群所需的容量設定為一個執行個體，並在機群的主區域中部署一個執行個體。對於多位置機群， Amazon GameLift Servers 會將一個執行個體部署到主要區域和每個遠端位置。機群狀態達到 後`ACTIVE`，您可以提高或降低所需的容量以縮減規模。

您可以使用Amazon GameLift Servers擴展功能來手動變更容量，或根據玩家需求設定自動擴展：
+ 使用目標追蹤設定自動擴展。請參閱 [目標型自動擴展](fleets-autoscaling-target.md)。
+ 手動變更機群的容量。請參閱 [手動設定機Amazon GameLift Servers群的容量](fleets-updating-capacity.md)。

擴展容器機群時，請考慮新增或移除執行個體如何影響機群託管遊戲工作階段和玩家的容量。
+ 每個執行個體的遊戲工作階段
  + 在執行個體上執行的每個遊戲伺服器程序代表託管一個遊戲工作階段的容量。
  + 使用此公式來計算在容器機群執行個體上同時執行的遊戲工作階段數量：

    ```
    [Game sessions per instance] = [# of game server processes per game server container] * [# of game server container groups per instance]
    ```

    如果您的容器架構在遊戲伺服器容器中同時執行一個遊戲伺服器程序，則每個執行個體的遊戲工作階段等於每個執行個體的遊戲伺服器容器群組數量。
    + 對於每個執行個體的遊戲伺服器容器群組，請呼叫 [DescribeContainerFleet](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_DescribeContainerFleet.html) 以取得 `GameServerContainerGroupsPerInstance`或 `MaximumGameServerContainerGroupsPerInstance`值。
    + 適用於執行個體的遊戲伺服器容器群組數量取決於 為作業系統和支援服務Amazon GameLift Servers預留一部分後可用的記憶體數量。如需如何計算可用記憶體的詳細資訊，以及常見執行個體類型的參考資料表，請參閱 [了解容器機群記憶體配置](containers-design-fleet.md#containers-design-fleet-memory-allocation)。
+ 每個執行個體的玩家數
  + 您決定在每個遊戲工作階段中允許的玩家位置數量。根據託管解決方案處理遊戲工作階段置放的方式，您可以在配對組態或呼叫中為每個遊戲工作階段定義玩家，以開始遊戲工作階段置放。
  + 使用此公式來計算可在容器機群執行個體上同時玩遊戲的玩家數量：

    ```
    [Players per instance] = [# of game sessions per instance] * [# of player slots per game session]
    ```

若要取得容器機群目前的總容量，請呼叫 [DescribeFleetCapacity](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_DescribeFleetCapacity.html) 或 [DescribeFleetLocation 容量](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_DescribeFleetLocationCapacity.html)，以取得機群中的遊戲伺服器容器群組數量。作用中群組是目前託管遊戲工作階段的群組。閒置群組已準備好託管新的遊戲工作階段。將這些值乘以每個遊戲伺服器容器群組的伺服器程序數目。