
游戏服务器编排
游戏服务器编排是指在比赛开始和结束时,对游戏服务器实例进行自动分配、缩放和拆除。它决定了每个服务器在何处运行,启动它,将它的地址分发给玩家,并在比赛结束时将其回收。一旦游戏同时进行的比赛超过少数几场,手动进行此操作就变得不再现实。
又称
编排
,
游戏服务器编排在一场比赛中起什么作用?
大多数工作室来到这里都会问一个更简单的问题:我该如何托管我的游戏服务器?编排(Orchestration)回答了每天重复多次、每场比赛都要进行的部分。
请求服务器。当玩家准备好开始游戏时,您的后端会调用编排器的 API 来请求一个服务器。由什么发起调用并不重要:可以是匹配系统(matchmaker)、游戏大厅(lobby)或您自己的服务。如果已经有合适的服务器在运行,玩家可以直接加入。
选择位置。编排器根据其了解的玩家情况和可用容量,决定服务器在何处运行。
服务器启动。它会从游戏的服务器镜像启动一个容器,这通常是专用服务器的无头(headless)版本。
玩家获取地址。编排器返回一个 IP 和端口,您的后端将其传递给玩家。
比赛结束,服务器停止。其容量将被收回,用于下一场比赛。
在每场比赛中重复这些步骤,就构成了编排器存在的核心工作:随玩家需求进行扩缩容(scaling)。它会在玩家加入时增加服务器,在玩家离开时减少服务器,无论是在单个位置还是跨多个位置。这样,工作室游戏所需的每场比赛都能获得服务器,且理想情况下是在网络体验良好的位置。在基础设施术语中,这是“水平扩展”(增加更多相同规格的服务器),而不是“垂直扩展”(给单个服务器提供性能更强的机器)。游戏服务器很少进行垂直扩展:比赛的需求由其构建版本决定,因此容量是通过增加服务器来增长的。
有两个决定影响着编排器如何做到这一点:允许服务器在何处运行,以及如何为这些容量付费。
服务器应该在哪里运行,以及如何支付容量费用?
地点:区域中心或靠近每场比赛。 许多游戏在少数几个大型服务器区域运行服务器,并将玩家发送到最近的一个。这对工作室来说是具有成本效益的:容量集中,易于运营,且每个区域都有大量玩家可供匹配。成本落在了离中心最远的玩家身上,他们每场比赛都要承受额外的距离。另一种选择是,根据每场比赛玩家的所在地,从许多较小的地点中为每场比赛选择一个位置。这缩短了更多玩家的距离,也缩小了同一场比赛中玩家之间的差距,从而保持了公平竞争的环境。这在休闲比赛中和在竞技比赛中同样重要:一场让人觉得公平的比赛通常是玩家更享受的比赛。这也对协调器提出了更高的要求,它必须实时做出这个选择。
方式:固定容量或云容量。
固定容量是指按月租用的裸金属或预留主机。在繁忙时,它的每小时成本较低,通常包含出站流量,适用于永不下降的负载:持久性世界,或每小时运行的基础比赛。然而,玩家的需求很少是平稳的。它通常在当地时间下午晚些时候到晚上达到顶峰,并在夜间下降,因此为峰值设计的主机在一天中的其余时间里部分处于空闲状态。你需要在它空闲时支付费用,而且它只存在于你租用的位置。这使得固定容量成为一个投资回报决策:它一天有多少小时足够繁忙,以至于其成本低于按需使用。
云容量是根据需求启动并按运行时间计费的,既可以作为你自己的云机群,也可以作为与其他工作室共享的多租户容量。共享将多个地点的成本分摊到多款游戏中,因此每款游戏可以触及比单独租用更多的地方。
为什么大多数游戏最终都会变成混合类型?
因为大多数游戏都同时存在这两种负载。一款基于匹配的游戏全天候运行着稳定的基准比赛,并在其之上出现高峰:晚上、周末、发布会、内容更新。固定容量是承载基准负载且最具成本效益的选择。云容量则可以吸收高峰,并触及远离固定主机的玩家。在同一个编排器下运行这两者就是混合编排,而对于每款游戏来说,最合适的组合都各不相同。
极端情况处于两端。《堡垒之夜》(Fortnite)“几乎完全”在 AWS 上运行,包括其游戏服务器群(据 DatacenterDynamics,2023 年 2 月)。持久性 MMO 则倾向于另一端,因为一个永不关闭的世界正是永不下降的负载的定义:《岛屿》(The Isle)运行在 Edgegap 的专属私有服务器群(Private Fleet)上,《泰坦之路》(Path of Titans)也是如此。
在 Edgegap 上,这两端分别是在同一个编排器下的 Private Fleet(拥有 58 个位置)和 Edge Cloud(在 17+ 供应商中拥有 615+ 个位置)(数据来自 平台数据,2026 年 9 月 18 日)。要查看您自己的并发用户数在固定容量和云容量之间的界限,请在价格计算器中进行模拟。
什么决定了最适合您游戏的商业模式?
游戏服务器,不仅仅是编排器。对于大多数游戏而言,答案在于成本效益与玩家体验之间的平衡,而服务器的四个属性决定了这一平衡点的所在:
会话时长。 能够结束的对局可以在不同位置和容量类型之间自由迁移。而持久化世界则需要一个持续运行的归宿。
单场对局资源。 通过性能分析构建测得的单场对局 CPU 和内存占用,决定了一台主机可以容纳多少场对局,从而决定了固定主机的价值。参见 vCPU。
单服务器玩家数。 1v1 对局是为两个人准备的;而 100 人的大厅则是为分布在整张地图上的整群玩家准备的。
单进程对局数。 多房间服务器将多个对局打包进一个进程中,这改变了您衡量尺寸和付费的单位。
从这些属性开始,然后选择构建基块:用于打包的 容器 和 服务器镜像,用于容量的 自动伸缩 和 温池,用于固定主机的 舰队管理。是否自行构建这些内容在 游戏服务器托管 中有详细介绍。
随着游戏的发展、在新的地区发布或增加持久模式,这些属性也会随之改变,因此编排器应该允许混合方式随之调整,而无需担心 供应商锁定:标准容器、固定容量和云容量并存,以及按分钟计费的云服务。Edgegap 就是以此方式构建的。
来自我们的赞助商(其实就是我们自己!)的寄语
大多数工作室在游戏上线并面对玩家时,才发现自己的扩容瓶颈。而 Edgegap 在针对真实游戏服务器容器的一小时基准测试中,达到了 1400 万并发会话,因此你需要考虑的限制在于你的游戏本身,而非你的托管服务商。
先为球员定位,再为其定价
区域中心是一种极具成本效益的服务器运行方式。然而,远离这些中心的玩家在每场比赛中都需要为延迟付出代价。
我们衡量了部署位置的价值。在某家 AAA 级发行商实时流量的重放中,将每个会话的专用服务器部署在最适合其玩家的位置,使平均往返时间缩短了 58%(从 116 毫秒降至 49 毫秒),并使 78% 的玩家延迟控制在 50 毫秒以内,而该发行商公共云设置下的这一比例仅为 14%(案例研究,2019 年)。玩家们对此深有体会。在 2022 年对美英两国 2000 名玩家进行的一项调查中,三分之一的玩家表示遇到延迟时就会停止游戏,42% 的玩家表示如果没有延迟,他们会玩得更多(连接性报告,2022 年 7 月)。
因此,我们从玩家出发:将每场比赛安排在玩家所在的位置,然后通过混合部署来实现成本效益,即以固定基线为主,超出部分使用云服务。这就是 Edgegap 自 2019 年 2 月以来编排 1.35 亿次游戏服务器部署的方式(平台数据,2026 年 9 月 18 日)。
Edgegap 的观点(仅代表个人意见,姑且听之即可!)
游戏服务器编排(Orchestration)是否支持 Unity、Unreal 和 Godot?
是的。编排器运行容器镜像,因此它不依赖于构建服务器的引擎。引擎在两个点上起作用:为镜像构建 Linux 服务器,以及一个小型集成,以便服务器可以读取其匹配数据并在准备就绪或结束时进行报告。Unity、Unreal 和 Godot 服务器都符合这种模式,不使用引擎编写的服务器(例如用于网页游戏的 Node.js 服务器)也是如此。
,









