CPU 还是内存:到底什么决定游戏服务器的快慢?
内存决定服务器能装多少,CPU 决定它能想多快。为什么单核速度最关键,以及多核心在什么时候才真正有用。
阅读约 5 分钟 · 更新于 2026年10月21日 · 作者:GuavaHost Team
内存决定你的服务器能装下多少东西,CPU 决定它能想得多快。很多被归咎于内存的服务器卡顿,其实是 CPU 的问题,所以本文讲清两者的区别、为什么单核速度比核心数量更重要,以及怎么判断你缺的是哪一样。
两份完全不同的工作
- 内存是容量。 它装着世界、玩家和模组。不够用时,服务器会在腾内存的过程中卡顿,或者崩溃。
- CPU 是速度。 真正的活都是它干的:移动生物、运行 AI、物理、红石、工作方块以及每一个插件。不够用时,服务器就会跟不上,所有人会同时感受到延迟和拉回。
给一台缺 CPU 的服务器加内存毫无作用,而一颗快的 CPU 也救不了内存已经耗尽的服务器。两样你都得有足够的量,但它们失效的方式不一样。
刻预算
游戏服务器是在一个循环里跑的。循环的每一轮叫做一刻(tick),每一刻里服务器都会更新世界中的一切。游戏要求每秒达到固定的刻数,这就给每一刻定下了时间预算:
| 游戏 | 目标刻率 | 每刻时间 |
|---|---|---|
| Minecraft Java | 每秒 20 刻 | 50 ms |
| Terraria | 每秒 60 次更新 | 约 16.7 ms |
| Counter-Strike 2 | 每秒 64 刻 | 约 15.6 ms |
如果一刻花的时间超过了它的预算,服务器就跟不上了。在 Minecraft 里,这表现为 TPS(每秒刻数)掉到 20 以下、MSPT(每刻毫秒数)爬过 50。我们的 读懂 TPS 与 MSPT 讲了怎么测量。
内存在这个预算里根本没有出场。能不能按时跑完每一刻,纯粹取决于活有多少、CPU 处理得有多快。
为什么单核速度最关键
多数游戏服务器把核心模拟放在一个主线程上。线程是一个 CPU 核心能够执行的一条工作流水,而游戏世界很难拆到好几条线程上,因为每一步都依赖前一步:在服务器算出生物要踏上去的那个方块落在哪里之前,这只生物就没法移动。
Minecraft、Rust、ARK、Valheim、Project Zomboid 和 Terraria 全都是这样工作的。所以单个核心的速度,就是整台服务器的天花板。一颗有 16 个较慢核心的 CPU,跑 Minecraft 世界可能还不如一颗有 8 个更快核心的,因为世界的主要工作始终只能用上其中一个核心。
单核速度由两件事决定:
- 主频,以 GHz 为单位:核心每秒运行多少个周期。
- 每周期的工作量,它会随 CPU 代际更新而提升。同样 GHz 的新款 CPU,往往明显快于老款。
大容量的 CPU 缓存(芯片上一小块速度极快的内存)同样有帮助,因为游戏服务器会不停地在大量零碎的数据之间跳来跳去。
多核心什么时候真的有用
多出来的核心并非无用,它们承担了一切不属于主刻的工作:
- 后台工作。 保存世界、加载和生成区块(像 Paper 这样的服务端软件把其中一部分挪出了主线程)、压缩网络数据,以及运行那些本就写成后台执行的插件任务。
- Java 垃圾回收。 Minecraft Java 用多条线程清理不再使用的内存,所以空闲核心能让这些清理过程保持短暂。
- 不止一个进程。 一台 Don't Starve Together 服务器把地表和洞穴当作两个独立进程来跑,而 ARK 集群里的每张地图都是独立服务器。它们各自都能用上自己的核心。
- 更新和备份。 下载游戏更新或压缩备份是和游戏并行进行的,不会挤在某一刻里面。
一些较新的引擎,包括 ARK 和 Palworld 背后的 Unreal Engine,会把更多工作分摊到额外的线程上。即便如此,主游戏线程依然决定整体节奏。
你缺的到底是哪一样?
| 你看到的现象 | 可能的原因 |
|---|---|
| 内存曲线钉在上限 | 内存 |
| 内存不足报错,或在加载时崩溃 | 内存 |
| 内存还有余量,但 TPS 下降、MSPT 上升 | CPU |
| 只有在巨型农场、超大基地或大量生物附近才卡 | CPU |
| 卡顿在几个小时里慢慢累积,重启就好 | 多半是内存缓慢爬升,有时是实体堆积 |
| 只有一个玩家卡 | 都不是:那是他的延迟 |
有个细节值得了解:GuavaHost 控制面板里的 Usage 卡片(在 Overview 和 Console 标签上)显示的 CPU 是相对你套餐的占比。当你的套餐设有 CPU 上限时,这个数字是套餐全部核心的合计占比,标注形如「of 2 cores」,所以 100 个百分点意味着所有核心都在忙。而游戏的主线程只能用一个核心,所以在一个 2 核套餐上,一台卡着却只跑在 50 个百分点左右的服务器,可能已经把主线程压满了,哪怕总体上还有余量。当你的套餐没有 CPU 上限时,这个数字是单个核心的百分比,所以一台卡着却稳定在 100 个百分点左右的服务器,道理完全一样。这就是主线程瓶颈的经典特征。
解决 CPU 瓶颈型卡顿
加内存在这里帮不上忙。真正有用的是让主线程每一刻少干点活:
- 先降模拟距离,再降视距。参见 视距与模拟距离。
- 限制刷怪农场,清理掉落物和多余实体。
- 预生成世界,这样玩家在玩的时候就不用临时生成新地形。
- 用性能分析工具找出吃性能的插件或模组。在 Minecraft 上,免费的 Spark 插件会明确指出每一刻的时间都被谁吃掉了。
- 安排每日重启,清掉堆积的实体和内存。
我们的 卡顿排查清单 会按顺序带你走完这些步骤。
这些在 GuavaHost 上怎么体现
每一台 GuavaHost 服务器都运行在 AMD Ryzen 和 Intel 处理器上,选它们正是因为单线程性能强,而这恰恰是游戏服务器最依赖的东西;存储则是 NVMe 固态硬盘。你需要自己选的部分是内存,按你的游戏和团队规模来定,而且随时都能用控制面板里的 Manage plan 更改,费用按比例结算。如果你的服务器内存有余量却依然吃力,那就是一项调优工作,我们的 内存指南 解释了为什么买更多内存解决不了它。
还没搞定吗?来 discord.gg/GuavaHost 加入我们的 Discord,团队会帮你解决。
- cpu
- ram
- performance
- single-thread
- cores
- tick rate
- lag
还是没解决? 我们的团队 7x24 小时在线,随时解答你的问题。