Minecraft 服务器需要多少 RAM? 1GB够用吗?
在支付更多托管费用或硬件升级之前,请先阅读本文。
托管 Minecraft 并与朋友一起玩很有趣,但如果体验一团糟,那就不那么有趣了。以下是如何计算您的 Minecraft 服务器需要多少 RAM。
Minecraft 服务器需要多少 RAM?
在深入了解细节之前,让我们首先了解选择 Minecraft 服务器所需 RAM 量的黄金法则。
您不需要别人告诉您需要多少 RAM。您需要多少 RAM 才能获得流畅的玩家体验。
对于大多数和几个朋友一起闲逛的玩家来说,1GB 的 RAM 用于 Minecraft 服务器就绰绰有余了——尤其是在他们优化服务器体验的情况下。
但如果您搜索有关《我的世界》服务器需要多少 RAM 的信息,您得到的答案可能会让人感觉有些混乱。您找到的许多结果都是 Minecraft 服务器主机提供商提供的建议。托管套餐的费用根据套餐提供的 RAM、处理能力和磁盘空间等因素而定。
因此,建议您购买更大的托管套餐存在一些固有的偏见。提供商不仅可以赚更多的钱,而且如果服务器的规模无法满足您的需求,您很有可能不需要提交支持票证或需要额外的帮助。
“我的 Minecraft 服务器需要多少 RAM?”是类似于“我需要多大的车辆?”的问题。因为如果不考虑服务器(或车辆)的使用方式,您就无法有效地回答问题。因此,“每个人都应该为他们的 Minecraft 服务器配备 4GB RAM”这一笼统的说法与“每个人都需要一辆货车”一样有用。
影响 RAM 需求的因素
让我们深入研究一下导致 RAM 使用并在 RAM 不足时导致服务器延迟的一些主要因素。
顺便说一下,在 Minecraft 世界中,服务器延迟通常用术语“每秒 Ticks”(TPS) 来表示。
TPS 大致类似于术语“每秒帧数”(FPS),游戏玩家用它来描述计算机在他们正在玩的视频游戏中显示帧的速度——只不过在这种情况下,它不是视觉滞后,而是内部延迟。服务器的时钟在压力下滞后。使 Minecraft 客户端体验更流畅的提示和技巧并不能解决服务器问题。
Minecraft 的编码为 20 TPS。当性能瓶颈迫使TPS低于20时,游戏体验就会受到影响。以下是导致服务器延迟的一些因素。
玩家数量
毫无疑问,最大的因素是玩家的数量。 《我的世界》可能看起来像是一款块状老式且要求不高的游戏,但该游戏非常消耗资源。服务器必须为游戏中的每个玩家呈现动态且不断变化的环境。
如果您和您的朋友都在同一区域,例如您正在将一个村庄建造成一座坚固的城堡,那么它确实有助于稍微减少对服务器的要求。但如果你全力探索各处,服务器的压力就会增加。四个人同时探索地图的不同区域比单人闲逛要消耗更多资源。
无论您运行哪种类型的服务器,无论是普通服务器还是经过大量修改的服务器,每个玩家都是需求倍增器。
视距
《我的世界》中的视距是游戏加载和渲染构成游戏世界的“块”的距离。默认视图距离为 10 个块。
减少它会降低对服务器的需求,但代价是玩家能看到的距离以及游戏中仍然加载和活动的内容。增加它将需要每个玩家更多的 RAM 来处理增加的渲染和实体。
红石、实体和块加载
除了简单地渲染玩家在游戏中看到的内容之外,服务器还必须不断计算并重新计算游戏中的所有内容正在做什么。羊四处游荡,村民循环执行他们的小 NPC 例程,生成小怪,等等。
甚至植物生长周期、红石电路的动作以及游戏中的创作也会影响服务器的负载。
如果您和您的朋友想要建造大型红石作品,例如铁傀儡农场、黄金农场或其他资源密集型项目,您可能需要更多 RAM。
游戏模组
对于许多玩家来说,修改《我的世界》是《我的世界》体验的重要组成部分,而修改模块对服务器提出了很高的要求。
虽然小型模组(例如,仅改变村民出售的物品或流浪商人的行为)的要求并不是很高,但改变游戏机制、添加额外维度以及以其他方式对游戏进行重大更改或添加的模组会增加游戏的难度。您需要的 RAM 量。
流行的大型模组包(例如 Better Minecraft)通常包含 150 多个游戏增强和更改模组,自然需要比基本服务器更多的 RAM。
考虑升级服务器软件,而不是硬件
阅读前面的部分后,您的收获可能是“好吧,所以我需要更多 RAM!”但在您为 Minecraft 主机支付下一层费用或升级硬件之前,有一种非常简单且免费的方法可以提高 Minecraft 服务器性能。
多年来,Mojang 一直提供对 Minecraft 服务器平台的免费访问。您需要为游戏付费,但托管游戏所需的服务器是免费的。每个新的公开版本都有一个更新的 server.jar,您可以在官方网站上找到。
虽然这很慷慨,但官方服务器的优化很差。事实上,优化效果如此之差,以至于使用越来越多的 RAM 来解决问题通常不会提高性能。至少不是以一种具有成本效益和有用的方式。
我们建议您使用高度优化的 Minecraft 服务器分支(例如 PaperMC),而不是支付更多费用购买更强大的托管包或在家中升级硬件以使用普通服务器来追求更高的性能。
PaperMC 不仅优化得如此之好,让您大吃一惊,而且优化直接转化为更低的 RAM 需求。 (而且,因为 PaperMC 是 Spigot 项目的一个分支,这意味着您可以轻松使用大量与 Spigot 兼容的 Bukkit 插件。)
例如,我最近建立了一个服务器来与世界各地的一些朋友和家人一起玩。尽管知道性能问题,我还是决定直接从 Mojang 运行基本的普通服务器,只是为了测试它并确认事情没有改变。即使只有3-4名球员,表现也很糟糕。将我的 RAM 分配从 1GB 逐步向上调整到越来越高的数字对性能的影响很小。
无论我们做什么都会有延迟。块经常无法破坏(或正确放置),我的朋友经常会被困在“看不见的”块后面,这些块在视觉上已从客户端移除,但在服务器端却作为物理障碍持续存在。可以说这不是一次非常有趣的经历。
然而,当我用高度优化的 PaperMC 服务器替换普通服务器时,我能够将 RAM 分配一路降至 1GB,同时添加几十个 mod 和插件,所有这些都具有完美流畅的性能。设置也像常规 Minecraft 服务器一样简单明了。
无论您是付费购买主机还是在家自行托管,我们都无法强调从普通服务器软件迁移到 PaperMC 的升级是什么。
不要为您的 Minecraft 服务器过度分配 RAM
最后,请注意不要为 Minecraft 服务器过度分配 RAM。虽然随着添加大量玩家和日益复杂的模组而增加 RAM 是必要的,但存在收益递减的情况。
保持服务器的 RAM 分配接近玩家和模组/插件的要求实际上有助于服务器更好地运行。将 16GB RAM 分配给实际上并不需要的服务器只会使驱动服务器的 Java 运行效率更低。
我们没有必要展开一篇关于 Java 的论文,但这里的关键细节是一个称为“垃圾收集”的概念,即 Java 程序自动管理其内存利用率的过程。
如果您为 Minecraft 服务器分配的 RAM 太少,垃圾收集进程会频繁运行以保持 RAM 可供使用。这会影响性能并且您的服务器无法顺利运行。另一方面,如果分配太多 RAM,可能会导致垃圾收集器不频繁运行,但运行时会给服务器带来更大压力。
简而言之,让实际的游戏体验来指导你的调整。从 1GB 开始玩。一切都很顺利,玩得很开心?太好了,保留 1GB。添加一些模组、更多朋友,或者两者兼而有之,服务器就会开始滞后?分配更多 RAM(或购买更大的托管包)以平衡服务器上的新需求。