本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
排定遊戲工作階段置放的優先順序
Amazon GameLift 使用演算法來判斷佇列目的地的優先順序,並判斷放置新遊戲工作階段的位置。演算法是以一組有序的條件為基礎。您可以使用預設優先順序,也可以自訂順序。您可以隨時編輯佇列的優先順序。
預設優先順序
-
延遲 – 如果遊戲工作階段置放請求包含玩家的位置特定延遲資料,Amazon GameLift 會計算每個位置的平均玩家延遲,並嘗試將遊戲工作階段放置在平均數最低的機群位置。
-
成本 – 如果請求不包含延遲資料,或多個機群具有相同的延遲,則 Amazon GameLift 會評估每個機群的託管成本。機群的託管成本會根據機群類型 (Spot 或隨需)、執行個體類型和位置而有所不同。
-
目的地 – 如果多個機群具有相同的延遲和成本,則 Amazon GameLift 會根據佇列組態中列出的目的地順序來排定機群的優先順序。
-
位置 – 對於具有多位置機群的佇列,如果所有其他條件相等,則 Amazon GameLift 會根據字母順序排定機群的位置優先順序。
自訂佇列如何排定遊戲工作階段置放的優先順序
您可以選擇自訂佇列如何排定置放條件的優先順序。佇列會將自訂優先順序套用至其收到的所有遊戲工作階段置放請求。
注意
如果您建立自訂優先順序組態,但未包含所有四個條件,Amazon GameLift 會自動依預設順序附加任何缺少的條件。
自訂佇列的優先順序組態
使用 Amazon GameLift 主控台
依玩家延遲排定置放的優先順序
如果您想要為玩家提供最佳的玩家體驗,並確保最低延遲,請在設定遊戲工作階段放置系統時採取下列步驟:
將佇列設定為在選擇遊戲工作階段放置位置時優先考慮延遲。延遲預設為優先順序清單的頂端。您也可以自訂佇列的優先順序組態,然後選擇將延遲置於優先順序的位置。
-
為您的佇列設定玩家延遲政策。延遲政策可讓您設定在遊戲工作階段置放中允許的延遲量硬性限制。如果 Amazon GameLift 無法在超過限制的情況下放置遊戲工作階段,放置請求將會逾時並失敗。您可以設定單一延遲政策,也可以建立一系列政策,隨著時間逐漸放寬延遲限制。透過一系列政策,您可以指定極低的初始延遲限制,並且在短暫延遲後仍可容納延遲較高的玩家。如需建立延遲政策的詳細資訊,請參閱建立玩家延遲政策。
提出遊戲工作階段置放請求時 (請參閱 StartGameSessionPlacement),請包含每個玩家的延遲資料。玩家延遲資料包含可能放置遊戲工作階段的每個可能位置的值。例如,對於將遊戲工作階段放置在 AWS 區域 us-east-2 和 ca-central-1 中的佇列,延遲資料看起來可能會如下所示:
"PlayerLatencies": [ { "LatencyInMilliseconds": 100, "PlayerId": "player1", "RegionIdentifier": "us-east-2" }, { "LatencyInMilliseconds": 100, "PlayerId": "player1", "RegionIdentifier": "ca-central-1" }, { "LatencyInMilliseconds": 150, "PlayerId": "player2", "RegionIdentifier": "us-east-2" }, { "LatencyInMilliseconds": 150, "PlayerId": "player2", "RegionIdentifier": "ca-central-1" } ]
依位置排定置放的優先順序
您可以設定佇列,根據地理位置的優先順序清單進行遊戲工作階段置放。位置是決定佇列如何選擇放置新遊戲工作階段的位置的條件之一。根據預設,位置在延遲、成本和目的地之後會排在第四位。
對於遊戲工作階段放置,目的地和位置的含義略有不同:
-
目的地是指特定的機群,並包含所有機群的託管資源,無論部署到何處。依目的地排定優先順序時,Amazon GameLift 可能會在機群中的任何位置進行置放。多位置受管機群和 Anywhere 機群可以有部署到一或多個位置的託管資源。
-
位置是指部署機群託管資源的特定地理位置。機群可以有多個位置,其中可能包括 AWS 區域 Local Zones 或自訂位置 (適用於 Anywhere 機群)。單一位置受管機群有一個位置,而且一律為 AWS 區域。多位置受管機群具有主要區域,並且可以有遠端位置。Anywhere 機群有一或多個自訂位置。
依位置排定置放優先順序時,Amazon GameLift 會尋找任何包含優先順序位置的佇列目的地,並搜尋可用的託管資源。如果具有優先順序位置的多個目的地,Amazon GameLift 會移至下一個優先順序條件 (成本、延遲、目的地)。
您可以透過多種方式影響佇列位置的優先順序
-
設定佇列處理所有遊戲工作階段置放請求的方式:
-
將優先順序組態新增至佇列。佇列的優先順序組態包含位置的排序清單。您可以指定一或多個要排定優先順序的位置。此清單不會排除任何位置,只會告訴 Amazon GameLift 先尋找可用託管資源的位置。排序位置清單的常見用途,是當您想要將大多數流量輸送至一或多個特定地理位置,並使用其他位置做為備份容量時。呼叫 UpdateGameSessionQueue 新增優先順序組態。
-
將篩選條件組態新增至佇列。篩選條件組態是佇列的允許清單。它會告知 Amazon GameLift 在尋找可用的託管資源時,忽略不在清單中的任何位置。篩選條件組態有兩種常見用途。首先,對於具有多個位置的機群,您可以使用篩選條件來排除部分機群的位置。其次,您可能想要暫時不允許在特定位置放置;例如,某個位置可能遇到暫時性問題。由於您可以隨時更新佇列的篩選條件組態,因此您可以視需要輕鬆新增和移除位置。呼叫 UpdateGameSessionQueue 新增篩選條件組態。
-
-
針對個別置放請求使用特殊指示:
-
在遊戲工作階段置放請求中包含優先順序覆寫清單。您可以使用任何 StartGameSessionPlacement 請求提供位置的替代優先順序清單。此清單會針對僅針對該請求的位置,有效地取代佇列設定的優先順序。它不會影響任何其他請求。此覆寫功能有幾個需求:
-
僅將覆寫清單與具有優先順序組態的佇列搭配使用,並以
LOCATION
做為第一優先順序。 -
請勿在相同的置放請求中包含玩家延遲資料。包含延遲資料會在排定 Amazon GameLift 無法解決的位置優先順序時設定衝突。
-
如果 Amazon GameLift 在優先順序覆寫清單中找不到可用資源,請決定您希望 Amazon GameLift 如何繼續。選擇返回佇列的其他位置,或限制覆寫清單的位置。根據預設,Amazon GameLift 會回復為嘗試置放在佇列的其他位置。
-
視需要更新佇列的篩選條件組態,例如在覆寫清單上新增位置。覆寫清單不會使篩選條件清單失效。
-
-