本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
搭配 Amazon 使用競價型執行個 GameLift
設定 GameLift 受管 EC2 叢集時,您可以使用競價型執行個體、隨需執行個體或組合。進一步了解 Amazon 如何在中 GameLift 使用競價型執行個體隨需執行個體與 Spot 執行。若要使用競價型艦隊,您的遊戲整合需要此頁面上列出的調整。
您是否正在使 FlexMatch 用配對? 您可以將 Spot 機群新增至現有的遊戲工作階段佇列,以進行配對配置。
-
設計 Spot 執行個體的遊戲工作階段佇列。
使用佇列管理遊戲工作階段配置是最佳做法,使用 Spot 執行個體時也是必要的。若要設計佇列,請考慮下列事項:
-
位置 — 為了獲得最佳的玩家體驗,請選擇地理位置靠近您的玩家。
-
執行個體類型 — 考量您的遊戲伺服器硬體需求,以及所選位置的執行個體可用性。
若要嘗試最佳化 Spot 可用性和恢復能力的佇列,請參閱。教學課程:設定 Spot 執行個體的遊戲工作階段佇列
-
-
針對 Spot 最佳化佇列建立機群。
根據您的佇列設計,建立叢集,將遊戲伺服器部署到您想要的位置和執行個體類型。請參閱 建立 Amazon GameLift 受管叢集 協助建立及設定新機群。
-
建立您的遊戲工作階段佇列。
新增艦隊目的地、設定遊戲工作階段放置程序,以及定義放置優先順序。請參閱 建立遊戲工作階段佇列 協助建立及設定新佇列。
-
更新您的遊戲用戶端服務以使用佇列。
當您的遊戲用戶端使用佇列來請求資源時,佇列可避免資源中斷的機率很高,並選擇符合您定義的優先順序的位置。如需協助在遊戲用戶端實作遊戲工作階段配置,請參閱 建立遊戲階段。
-
更新您的遊戲伺服器以處理 Spot 中斷。
AWS 當需要恢復容量時,可以通過 2 分鐘的通知中斷 Spot 執行個體。設定您的遊戲伺服器以處理中斷,以盡量減少玩家的影響。
在 AWS 回收 Spot 執行個體之前,它會傳送終止通知。Amazon GameLift 通過調用 Amazon 服務器 SDK 回調函數
onProcessTerminate()
將通知傳遞給所有受影響的 GameLift服務器進程。實施此回調以結束遊戲會話或將遊戲會話和玩家移動到新的實例。請參閱 回應伺服器處理序關閉通知 協助實作onProcessTerminate()
。注意
AWS 盡一切努力在回收執行個體之前提供通知,但有可能在警告到達之 AWS 前回收 Spot 執行個體。準備好遊戲伺服器以處理意外中斷。
-
檢閱 Spot 叢集和佇列的效能。
在 Amazon GameLift 控制台或使用 Amazon 查看 Amazon GameLift 指標 CloudWatch 以查看性能。如需 Amazon GameLift 指標的詳細資訊,請參閱監控亞馬遜GameLift與亞馬遜 CloudWatch。關鍵指標包括:
-
中斷率 — 使用
InstanceInterruptions
和指GameSessionInterruptions
標來追蹤執行個體和遊戲工作階段的 Spot 相關中斷次數和頻率。由回收的遊戲工作階段 AWS 具有狀態TERMINATED
和狀態原因。INTERRUPTED
-
佇列有效性 — 追蹤放置成功率、平均等待時間和佇列深度,以確認 Spot 叢集不會影響佇列效能。
-
車隊使用量 — 監控執行個體、遊戲工作階段和玩家工作階段的資料 隨需叢集的使用量可能是佇列避免放置到 Spot 叢集以避免中斷的指標。
-