首页 > 解决方案 > Minecraft 服务器使用所有 CPU

问题描述

我想在我的树莓派 4-b 上使用 8 GB RAM 创建一个私有的 minecraft 服务器(在 1.17.1 上)。

我已经安装了 64 位 Ubuntu 服务器和 openJDK 17,但实际上当我启动服务器时,它会在几秒钟后回复我。

跟不上!服务器是否超载?...

我还用 htop 检查了进程,我可以看到 minecraft 至少需要大约 30 个线程并使用我所有的 CPU(400%),所以我试图限制线程的数量,但是这很有效......任何人都知道我能做什么请优化我的我的世界服务器?

还有我用于启动我的 minecraft 服务器的 shell 脚本:

java -jar -server -Xmx4G -Xms1024M -XX:CICompilerCount=4 server.jar nogui

另外,这是我的时间

 Pct Total  Pct Tick       Total             Avg     PerTick      Count     Event
  24.99%      24.90%     83.62 s        12.45 ms     1.0           6.7k     world - doTick
  19.14%      19.07%     64.03 s         9.54 ms     1.0           6.7k     world - tickEntities
   6.01%       5.99%     20.10 s         2.99 ms     1.0           6.7k     world_nether - doTick
   4.41%       4.39%     14.74 s         2.19 ms     1.0           6.7k     world_the_end - doTick
   1.39%    9,303.90%     4.65 s     4,651.95 ms     0.0           0.0k     World Save
   0.44%       0.43%      1.46 s         0.22 ms     1.0           6.7k     world_nether - tickEntities
   0.42%       0.41%      1.39 s         0.21 ms     1.0           6.7k     world - tracker
   0.20%       0.20%      0.68 s         0.10 ms     1.0           6.7k     world_the_end - tickEntities
   0.10%       0.10%      0.32 s         0.05 ms     1.0           6.7k     world_nether - tracker
   0.03%       0.03%      0.11 s         0.02 ms     1.0           6.7k     world_the_end - tracker

标签: javaminecraftbukkit

解决方案


您的服务器时间来看,有这一行:

1.39%   9,303.90%     4.65 s     4,651.95 ms     0.0           0.0k     World Save

它代表了您的大部分问题。比如不是因为:

  • 插件:无法快速修复(通过向插件所有者报告/删除它)
  • 不是 bukkit 事件问题
  • 不勾选实体(实体太多)
  • 内存太大

比如是因为save,什么会造成这个问题:

  • RAM:8Go 可以容纳超过 50 个玩家(包括插件),所以显然没有。
  • Java:JDK 17 是最新的,所以我认为很难有这么几个问题
  • CPU:你说这个。有可能,但是比如能在这种类型的产品上运行,不应该是这样,也不应该超过9k%。
  • 存储:我认为你的存储不好。它不是 SSD,因此您的整个服务器都在等待保存它。可以用 spigotmc 上的这个线程来证明。

你怎么能解决它?

如果不购买新的存储,这显然很困难。

您可以尝试从不保存,除非没有任何玩家,例如。

您还可以尝试减少所有可以产生存储节省的功能:

  • 升级自动保存(在bukkit.yml
  • 渲染距离(英寸server.properties
  • 升级物品消失,箭头...(中spigot.yml
  • 降级生成限制(in bukkit.yml)

推荐阅读