众做周知,服务器性能最直接的方式就是——不卡
但是这个概念太笼统了,以至于很多新手腐竹会简单粗暴的升级配置(虽然说这是最有效的方法)
非常的浪费钱(财大气粗除外)!
那么,该如何改善这个问题呢?
温馨提醒,本优化教程主打插件服务端,模组服务端(forge/fabric)请移步!
- 【性能测量】
在解决卡顿问题之前,你得先知道,到底是什么导致卡顿的发生才能对症下药
如果想要得知是什么原因的卡顿,不妨看看下文中提到的“Ping” “TPS” “mspt”
Ping(延迟)通常来说,ping越低越好,因为他反映了数据在客户端和服务器主机之间处理和传输所需的时间
ping0-50 不卡!
ping50-100 还行!
ping100-500 有点困难….
ping500以上 虽然流畅但是挖不了一个方块QAQ
TPS (服务器反应速度)(可以这么理解吧)TPS 代表TicksPerSecond。是服务器所有者可以直接控制唯一项目之一,服务器以 20 TPS 的速率处理所有任务。诸如怪物移动、作物生长和玩家与块的交互等任务需要由服务器Ticks才能正常运行。TPS 低于 20 意味着服务器运行滞后,必须跳过任务才能按时执行重要任务。显着的 TPS 损失通常会带来一些轻微的烦恼,例如间歇性的怪物卡顿和块中断重置(挖掘不了方块)严重的情况可能会导致服务器范围内的冻结甚至崩溃
总之,就是越低越容易崩
TPS20.0 流畅拉满
TPS19.95-19.99 没逝,大多数服务器都是在这里,不用担心
TPS18.5-19.94 还行,有点卡
TPS16.0-18.4 如果是这样,得看看有没有高频了..
TPS<16.0 如果其他一切正常,不妨看看谁开的世吞(不是)(总之没法玩)
mspt(服务器滞后)如果你开的是paper或者paper的扩展,会有/mspt这串命令,该命令将告诉您服务器计算最近的回应所花费的时间,如果输入之后你看到第一和第二的数值低于50,那么恭喜,你服务器的一个十分重要(对我来说)的一个性能十分良好,达到正常水平!
说了这么多,大家都了解了这些概念了吧,那么我们将开启优化时间!
- 【优化环节】:bukkit.yml
这些东西都是优化的重头!可能会导致服务器各项功能出现异常!请在配置前备份!
如果你开的是bukkit或一系列分支服务端的话,应该会有一个名叫bukkit.yml的文件
以下是在配置文件里面的一些优化设置,大家可以参考
spawn-limits
默认值: monsters:70, animals:10, water-animals:15, water-ambient:20, ambient:15
推荐值:monsters:50, animals:8, water-animals:7, water-ambient:10, ambient:1
性能影响:重
->虽然这比“每个玩家的怪物数”更多,但较低的值意味着更少的怪物。避免太低,否则怪物短缺会很明显
chunk-gc.period-in-ticks
默认值:600
推荐值:400
性能影响: 中等
->数值越小卸载未加载区块的速度越快,更少的tick意味着更少的 TPS 消耗
【性能优化】spigot.yml(水龙头):
在spigot等插件服务端(除bukkit)中,spigot.yml可以说是常客了,在诸多插件服务端中都会存在
save-user-cache-on-stop-only
默认值: false
推荐值: true
性能影响:中等
-> 服务器应该持续保存用户数据(false)还是只在服务器停止/重新启动时候保存(true)?这在 Spigot 上节省了很好的 TPS(在 Paper 上更少,因为它更有效)
注意:进行定期备份以避免在罕见的致命崩溃事件中丢失数据
merge-radius
默认值: item:2.5, exp:3.0
推荐值: item:4.0, exp:6.0
性能影响: 中等
-> 合并项目意味着更少的地面项目。较高的值允许更多的项目被扫成一堆
注意:合并会导致错觉项目消失,因为他们合并在一起。强迫症的一个小烦恼
【性能优化】paper.yml:
高版本paper.yml文件在config文件夹里面!并且更名为paper-global!
max-auto-save-chunks-per-tick
默认值: 24
推荐值: 6
性能影响:重
->这会减慢世界保存任务期间的增量块保存速度。这对于现代服务器来说非常重要(拯救世界很糟糕)。
注意:将此设置得太低可能会导致未保存的块,因此请避免降低
use-faster-eigencraft-redstone
默认值: false
推荐值: true
性能影响: 重
破坏原版设备 的情况下将冗余红石更新减少多达 95%。实证测试显示加速高达 10 倍!
注意:如果您使用插件来更改红石算法,请考虑用此选项替换它们,因为插件往往会破坏红石行为!
【性能优化】server.properties:
simulation-distance
推荐值: 4-8
性能影响: 中
->模拟距离,一般不建议调低
view-distance
默认值: 10
推荐值: 4-8
性能影响: 重
➫ 这是所有文件中影响最大的设置,因为它限制了块渲染距离。开放世界服务器(如生存)应该努力使用 6+,但如果块生成导致延迟,共享主机、低规格或大量玩家数量的其他服务器可能会考虑 4-5
警告:如果您将查看距离设置为低于 7,请参阅 mob-spawn-range (spigot.yml) 中的注释
【优化插件推荐】
如果在这些东西调整过后,你还是觉得不满足!那么你可以试试….
Chunky:一个强大的预加载插件,不过,如果服务器安装了大规模tpr插件,会加大硬盘容量....
【结尾】
本文参考了B站请叫我蜘蛛君的文章,进行整合并通俗化的讲解,如果想翻看原文,请前往->https://www.bilibili.com/read/cv17603010
总而言之,服务器优化是一项大工程,其中不乏有重要配置文件的修改,优化的结果也是显而易见的,虽然视距变短了一点,但是却换来了更高的性能,这不是每个腐竹都想看到的吗?所以,我编写了这篇文章,以此来为新手腐竹带来有效的,准确的参考
最后,本篇文章是作者第一篇文章!如果想要了解更多的服务器优化知识,请移步到https://www.bilibili.com/read/cv17603010
感谢每个看到最后的人!感谢你们!