网站搜索

如何为 Minecraft 服务器分配更多 RAM


通过这种简单的技术将您的 Minecraft 服务器 RAM 设置在最佳位置。

如果您最近向 Minecraft 服务器添加了更多玩家、更多模组或两者,那么可能是时候分配更多 RAM 了。以下是如何获得更流畅的游戏体验。

增加服务器 RAM 有什么好处?

分配更多 RAM 并不一定是万灵药——通常优化服务器本身是比投入更多 RAM 更好的解决方案——但在某些情况下是需要这样做的。

《我的世界》是一款非常消耗资源的游戏,增加分配给服务器的 RAM 量可以解决各种问题,从幻影块到玩家在地图上移动时的橡皮筋和口吃等各种问题。

随着玩家数量的增加、添加插件和模组、构建越来越复杂的项目(例如自动物品分类器、农场等)等等,您对服务器的需求也会增加。如果您已经从与一个朋友在土屋里露营到与十个朋友一起建造一个精致的红石作品,那么可能是时候分配更多的内存了。

您可以在哪里使用此方法?

托管 Minecraft 服务器有多种方法。为了节省您的时间,我们首先讨论一下在哪里可以和不能使用我们即将概述的方法。

Minecraft Realms:RAM 分配是自动的

如果您使用 Minecraft Realms(官方 Mojang 服务器主机),则无法调整 RAM 分配——而且也不需要这样做。

Minecraft Realms 最初托管在 Amazon Web Services (AWS) 服务器上,在 Microsoft 收购 Mojang 后进行迁移后,现在托管在 Microsoft Azure 服务器上。 Realms 一直使用动态内存分配系统。您的 Realms 服务器只需增加或减少其使用的 RAM 量,无需 Realms 所有者的任何干预。

Minecraft 主机:你必须支付更多 RAM

如果您使用商业 Minecraft 主机,您通常需要为特定级别的硬件付费。鉴于此,您不能仅仅增加 RAM 分配——您必须为更高的级别付费。

有时您可以简单地访问网站并即时升级,有时您必须提交支持票并等待。检查您的 Minecraft 主机的文档以获取更多信息。不过,在您急于购买更多 RAM 之前,我们建议您先了解一下您真正需要多少 RAM,以及如何通过使用优化程度更高的 Minecraft 服务器版本来避免支付升级费用。

自托管:您可以自己调整 RAM

如果您在家中的硬件上自行托管 Minecraft 服务器或在租赁的硬件上远程托管,则可以增加 RAM 分配,以满足硬件本身和主机系统的开销需求所施加的限制。现在让我们看看您是如何做到的。

如何为您的 Minecraft 服务器分配更多 RAM

服务器的 server.properties 文件中有很多变量用于设置游戏模式、观看距离等。但是,您不会找到任何 RAM 分配条目。

相反,RAM 分配是通过启动期间传递给服务器软件的命令行参数来处理的。您可以使用标志设置堆或内存分配的大小

--Xmx

--Xms

它们分别指定最大和初始堆大小。您可以使用兆字节或千兆字节的名称,例如带有标志的 1024M 或 1G。

让我们看一个示例启动命令并分解所有部分。

java -Xmx1024M -Xms1024M -jar server.jar nogui 

在上面的命令中,我们调用Java,我们指定起始堆大小为1024M,最大堆大小为1024M。这

-jar server.jar

部分只是将 Java 的 jar 归档工具指向服务器文件,并且

nogui

标志阻止服务器创建 GUI 窗口。如果您想要一个包含性能统计数据、玩家列表和服务器日志实时视图的 GUI 窗口,您可以关闭 GUI 标志。

如果我们想将 RAM 分配增加到 2GB,您可以简单地关闭服务器并使用增加的值再次运行它:

java -Xmx2048M -Xms2048M -jar server.jar nogui

您可能已经注意到,我们没有在命令中指定范围(例如 512M 到 2048M),而是对最小和最大堆大小使用相同的值。将最小值和最大值设置为相同的值会将堆大小设置为固定值,这有助于避免 Java 动态调整堆大小时的性能影响。

您可能会好奇如果根本不设置内存分配标志会发生什么。 Java 默认将最小堆大小(将使用的最小内存量)设置为操作系统报告的物理 RAM 的 1/64,将最大堆大小(将使用的最大内存)设置为可用 RAM 的 1/4。

在大多数系统上,这个范围太宽(并且最大值太高),并且会影响性能。在我们讨论多少 RAM 对于 Minecraft 服务器有利时,我们触及了 Java“垃圾收集器”的概念,这是 Java 用于管理 RAM 的内置机制。简而言之,如果分配的 RAM 太少,收集器会运行得太频繁;如果分配的 RAM 太多,收集器会空闲太长时间,然后同时运行得太辛苦。

两者都不利于性能,因此您应该以适度的增量增加 Minecraft 服务器的 RAM 分配,例如从 1GB 到 1.5GB 到 2GB,直到达到您想要的结果。

如果您运行的是普通 Minecraft 服务器软件,并且增加 RAM 并不能提高性能,请考虑切换到经过高度优化的普通服务器分支,例如 PaperMC。根据我们的经验,切换到 PaperMC 所带来的性能提升高于任何额外 RAM 分配所能提供的性能提升。

无论哪种方式,只要进行一些调整(无论是 RAM 分配还是您正在使用的服务器平台),您都应该能够获得您想要的性能。