本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
GAMEPERF02-BP02 設計一種方法,可支援將延遲敏感的遊戲基礎設施放置在玩家附近,以改善效能
遊戲伺服器等延遲敏感基礎設施的個別配置,可將長時間網路路由的影響降至最低。可重複的部署可讓您輕鬆維護多個位置,這些位置對於您的玩家效能更佳。Ping 是在遊戲 UI 中呈現的常見指標,而低 ping 可以是差異化功能。
未建立此最佳實務時的曝險等級:高
實作指引
第一次啟動遊戲時,您可能還沒有關於玩家基礎的足夠資訊,無法充分了解部署最接近最有興趣玩遊戲之玩家的基礎設施的位置。這是常見的挑戰,您應該透過設計可讓您快速調整託管置放策略的架構來部署需要更靠近玩家的伺服器,為此案例做好準備。遊戲開發人員通常會定期將其遊戲基礎設施部署評估為經常性啟動後分析,以反覆方法逐步投資於隨著時間的改進。
最佳實務是使用infrastructure-as-code範本,例如 AWS CloudFormation 或 Hashicorp 的 Terraform,用於啟動關鍵遊戲服務所需的基礎設施組態,例如 VPCs、子網路組態和相依性,以便您可以參考這些範本、視需要快速自訂範本,並將其部署到需要額外基礎設施以支援玩家的位置。
您也應該確保了解目前的部署策略如何發展,以允許未來的擴展。IaC 範本是可重複的,但不能取代網路規劃。IPAM 會管理您的 VPCs。子網路大小、可用區域選擇,以及 IP 清查和跨帳戶可用區域對齊。網路很重要,需要考慮,變更時可能會對玩家造成干擾。跨多個地理位置部署的遊戲伺服器將連接到您的遊戲後端,這在單一或多個主區域中較常見,這可能需要額外的組態來支援私有連線。隨著時間的推移,應該持續評估這些考量,以便您可以隨著遊戲需求的變化或玩家需求變更,對遊戲託管策略進行變更。
判斷遊戲要使用多少遊戲託管位置時,請考慮下列因素:
-
玩家體驗改善的品質:您可以透過新增其他遊戲託管位置來提升玩家體驗的程度? 您可以藉由這樣做來達到什麼增量效能增益? 您將如何衡量此效能改善?
-
要優先考慮的玩家群體:如果您新增其他遊戲託管位置,可以改善多少玩家的體驗? 您將優先考慮哪些玩家人口或地理位置?
-
變更的下游影響:如果您變更遊戲託管策略,這將如何影響玩家的配對等待時間? 玩家集區中的配對大小、技能平衡或玩家數量是否可以適應遊戲託管位置策略變更? 支援更多位置可能會將玩家集區分段,並增加成本和複雜性。
當您決定新增或移除遊戲託管位置時,應評估這些考量。例如,您可以選擇優先改善遊戲體驗表現最差地理位置的玩家體驗,或是表達最聲音公開意見回饋的玩家體驗。您也可以選擇將玩家獲利納入您的優先順序,例如,專注於改善地理位置中的玩家體驗,這些玩家為您的遊戲產生重大收入來源,或者如果您引進效能提升,則有可能產生增量收入。
除了在 中託管基礎設施之外 AWS 區域,您還可以使用 Local Zones
在相同地理區域無法使用區域或本地區域時,Outpost
如果您要使用容器建置遊戲,並希望能夠靈活地使用可在您自己的內部部署基礎設施上部署的開放原始碼軟體來採用混合部署架構,您可以使用 ECS Anywhere
實作步驟
-
針對可重複的部署使用infrastructure-as-code工具,例如 AWS CloudFormation 或 Terraform,可根據玩家需求快速自訂和擴展遊戲託管位置。
-
在新增或移除遊戲託管位置時,評估玩家體驗改進、玩家人口優先順序和下游影響,例如配對時間。
-
使用 AWS 本機區域、Outpost 或混合選項,例如 ECS Anywhere、EKS Anywhere 或 GameLift Anywhere,以最佳化對延遲敏感的基礎設施,並支援各種部署需求。