了解Edgegap的工作原理

了解Edgegap的工作原理

嘈杂的邻居

“吵闹的邻居”(Noisy neighbor)是指共享硬件上的另一个租户,当主机未能对每个租户严格限制资源用量时,其高负载可能会拖慢您的工作负载。在游戏托管领域,这是促使人们将服务器迁移到整台机器(自有硬件、租用的裸金属或超大规模云实例)的最常见理由。在强制执行 CPU 和内存预算的容器主机上,每个游戏服务器都能保留分配给它的资源:超出预算的邻居会被限制或停止,仅对其自身的游戏对局产生影响。因此,其他邻居不受影响。

又称

吵闹的邻居,嘈杂的邻居

由

由

由

雅库布·莫蒂尔

雅库布·莫蒂尔

雅库布·莫蒂尔

,

产品总监

产品总监

产品总监

已发布

已发布

已发布

“吵闹邻居”只是共享云的问题吗?

“吵闹的邻居”(Noisy neighbor)通常被作为放弃共享算力、转向整台独占机器的理由。一些裸金属服务器提供商将其置于宣传的核心:“对于游戏服务器而言,吵闹的邻居可能会导致莫名其妙的延迟激增、tick率变慢以及不连贯的游戏体验”(Hivelocity,2025年12月)。

这种说法忽略了一个细节。游戏服务器主机很少只运行单场比赛。一台拥有数十个核心的裸金属机器通常会同时并排运行数十场比赛,而它们彼此之间互为邻居。工作室拥有所有的比赛进程,但它本想摆脱的资源争用问题依然存在于这台机器上,只不过现在来自其自身负载最高的那场比赛。

因此,问题不在于主机是否被共享。即使一个工作室拥有所有的算力容量,每个被编排的机群也都在共享其主机。真正的问题在于,主机上的每个服务器是否都被限制在自己的预算范围之内。

“吵闹的邻居”会拖慢您的游戏服务器吗?

在强制执行限制的容器主机上不会发生这种情况,无论邻居属于谁,包括您自己的工作室。当对局的服务器启动时,它会被分配 CPU 和内存配额,主机的内核会通过控制组(control groups,参见 Docker 文档)将每个容器严格限制在自己的配额内。

  • CPU。试图使用超过自身配额的邻居会被限制在其配额内。它无法占用分配给您服务器的 CPU。

  • 内存。超出内存限制的邻居会被停止运行。它的对局会终止;而您的对局则继续运行。

对于游戏服务器而言,至关重要的配额是每个 tick 的时间。128 Hz 的服务器大约有 7.8 毫秒来完成每个 tick。在强制限制下,该时间窗口取决于您服务器自身的配额和代码,无论主机还运行什么其他程序,它都保持不变。

因此,如果 tick 时间在负载下上升,首先应该检查的是您自己服务器的限制:例如在上次内容更新之前设置的 CPU 分配,或者是按平均对局而非满员对局设置的内存限制。托管(Colocation)涵盖了对其容量的调整。

远离邻居需要付出什么代价?

迁移到整台机器并不能消除“邻居”;只是让他们变成了你自己的。它所改变的只是账单:

  • 闲置容量。独占的机器在高峰期之间、夜间以及发布首周之后仍需付费。裸金属服务器的高峰时段计算同样适用。

  • 节点位置更少。每增加一个区域就意味着需要另一台按自身峰值配置的机器,因此独占机器的工作室往往只能覆盖更少的区域,导致更多玩家需要从更远的地方进行连接。

共享且经过编排的容量将这两项成本分摊到使用它的每款游戏中,同时仍将每台服务器控制在预算之内。Edgegap 的 Edge Cloud 在各自的容器中运行每个游戏服务器,并具有严格的 CPU 和内存限制,因此邻居的负载始终保持在邻居的预算之内。它运行在跨 17+ 基础设施提供商的 615+ 个地点,按每 vCPU 每分钟 0.00115 美元计费(平台数据,2026 年 9 月 18 日)。

最大的舰队是否共享主机?

是的。在 Google 的 Borg 中,共享单元中 98% 的机器同时运行着生产和批处理任务,每个任务都在“基于 Linux cgroup 的资源容器中”运行,并且对延迟敏感的任务可以预留整个物理 CPU 核心(Verma et al., EuroSys 2015)。

同样来自 Google 的 Heracles 在与批处理工作共享的主机上运行对延迟敏感的关键服务(包括网页搜索)。它实现了“在所有负载和共存场景下,平均服务器利用率达到 90% 且未发生延迟违规”(Lo et al., ISCA 2015)。

来自我们的赞助商(其实就是我们自己!)的寄语

区域只是对玩家所在地的一种预测。Edgegap 的边缘云(Edge Cloud)是一个分布式、多云网络,由 17+ 家服务商提供的 615+ 个节点组成,可按需使用。当游戏对局开始时,每个服务器都会在网络中最合适的可用节点上启动,而不是在仅有的几个区域中选择最近的一个。

Edgegap 的观点(仅代表个人意见,姑且听之即可!)

孤立是其产物

我们每天为数百万玩家部署游戏服务器(Edgegap 内部数据,2026年第三季度),自2019年2月以来已累计部署1.35亿次(平台数据,2026年9月18日)。每台服务器都在其自有的 CPU 和内存预算内运行,所在的主机与其他对局以及其他工作室的游戏共享。邻近的服务器无法占用该预算;其负载仅局限于自身。

因此,当有工作室告诉我们某场对局在负载下出现卡顿时,我们首先会查看该工作室的服务器预算。为低负载对局设定的内存限制,或在内容更新前设定的 CPU 配额,通常是导致 tick 时间发生波动的原因。

共享机制让小型游戏的服务器能够贴近其玩家,并按分钟计费。隔离机制则确保每场对局彼此独立,对使用 Edgegap 编排服务的其他所有游戏实现零影响。

-

-

-

雅库布·莫蒂尔

雅库布·莫蒂尔

雅库布·莫蒂尔

,

产品总监

产品总监

产品总监

常见问题

What is the noisy neighbor problem in Kubernetes?

“吵闹的邻居”是云服务器上的一个问题吗?

“吵闹邻居”问题是硬件问题还是软件问题?

“喧闹邻居”问题是硬件问题还是软件问题?

Get your Game Online Easily & in Minutes

立即开始集成!

轻松在线游戏
且在几分钟内