使用 Amazon GameLift 设置托管实例集
在本节中,您将找到有关设计、构建和维护用于托管游戏服务器的 Amazon GameLift 实例集的信息。请参阅 Amazon GameLift 托管,详细了解 Amazon GameLift 提供的托管解决方案,包括使用托管式 EC2 实例集的解决方案、用于本地硬件的自管理式 Anywhere 实例集以及使用这两者的混合解决方案。
实例集特征
Amazon GameLift 实例集是运行游戏服务器并为玩家托管游戏会话的计算资源集合。实例集可能因您使用的计算资源类型以及实例集的管理方式而异。实例集的大小(即它可以支持的游戏会话和玩家的数量)取决于您为其提供的计算资源的数量。所有 Amazon GameLift 实例集都具有以下特征:
-
在所有实例集上运行的游戏服务器进程都与 Amazon GameLift 服务器 SDK 集成,并以相同的方式与 Amazon GameLift 服务进行通信。游戏服务器会报告自己是否可用于托管游戏会话和玩家、响应启动或停止游戏会话的提示以及其他互动。
-
Amazon GameLift 以相同的方式处理所有实例集的游戏会话放置。Amazon GameLift 会跟踪实例集的游戏服务器状态,并从可用的游戏服务器中进行选择来托管新的游戏会话。无论您的游戏将游戏会话放在单个实例集上,还是使用游戏会话队列来平衡多个实例集之间的托管,都会使用此流程。使用队列时,您还可以自定义放置决策,将资源成本和延迟等因素纳入考量。
-
所有实例集都支持将 FlexMatch 对战构建器与游戏会话放置队列结合使用。Amazon GameLift 服务会接收玩家对战请求,形成匹配项,然后将其传递到游戏会话队列以查找可用的游戏服务器。
Amazon GameLift 会收集各种实例集指标。这些指标包括计算和服务器进程的状态指标,以及游戏会话和玩家活动的使用情况指标。有关可用指标的完整列表,请参阅使用 Amazon CloudWatch 监控 Amazon GameLift。
在 Amazon GameLift 中,您可以使用具有以下计算类型的实例集:
Amazon GameLift 实例集创建的工作原理
当您请求创建新实例集时,Amazon GameLift 会启动一个创建实例集资源的工作流程。当 Amazon GameLift 完成该工作流程的每个步骤时,Amazon GameLift 会更新实例集的状态,并发出一系列事件来传达实例集创建进度。
Amazon GameLift 使用两种类型的事件。一种是实例集状态转换事件,指示实例集状态何时发生变化。另一种是实例集创建事件,提供额外的标记来帮助处理调试问题。可以使用 Amazon GameLift 控制台或调用 Amazon GameLift API 操作 DescribeFleetEvents 来跟踪所有事件。您还可以使用 DescribeFleetAttributes 或 DescribeFleetLocationAttributes 来跟踪实例集和位置状态。