NitWikit/docs/优化/概览.md
2024-06-03 23:45:11 +08:00

4.8 KiB
Raw Blame History

sidebar_position
1

概览

优化不是装插件,而是清理服务器的卡顿因素,由于 Minecraft 本身的性能低下、部分插件作者并没有优化代码的意识、服务器实体过多等。

每个服务器可能有自己的卡顿原因,在这部分先做最基础的通用优化,如果你使用后作用不大请参考性能分析板块。

在此之前,请一定查看 优化误区,停止此类无效"优化",然后根据下面的步骤进行操作。

第一步 - Java 优化

:::info

几乎任何情况下所有服务器都会因为选择合适的Java而受益而这本身是最没有代价的仅仅需要你下载一个小小的 Java 安装程序,或者更改 JVM 参数(大白话来说就是开服参数)。

:::

选择合适的 Java

参考 Java 下载及安装安装合适的 Java

JVM 参数优化

可以在 JVM 参数生成器生成适合你服务器的基本 JVM 参数,然后复制并保存到你的启动脚本里,然后重启就完成了

别急,还有一些更高阶的参数。拓展阅读

第二步 - 更换核心

在插件和配置层面能进行的优化其实不多(受限于 API 还有服务端核心),所以最好的方法是更换服务器核心。

:::warning

任何时候都不要再使用 CraftBukkit 和 Spigot 了。追求稳定/性能上 Paper ,追求原版特性上 Leaves。 :::

选择更换的服务器核心

此处只是作为最基础的核心选择推荐,完整版请查看核心选择

Paper - 追求稳定 推荐度★★★★☆

如果是第一次开服,或者追求稳定,请使用 Paper 。任何时候想更换其他核心可以随时更换如 Purpur / Leaf 等核心。

Purpur - 稳定性与性能最佳选择 推荐度★★★★★

如果你并不是追求更极致的性能Purpur 你最好的选择只需要替换掉核心就可以Purpur 兼容全部插件!!

Leaf - 极致性能 推荐度★★★★☆

前往 Leaf 的 Github Action 下载最新核心,然后替换!!Leaf 兼容你的绝大部分插件(已知仅有一个不兼容,但在插件的分支解决)

Folia - 硬件利用率超高的高性能,但兼容性较差 推荐度★★★☆☆

如果你的服务器对插件的需求不大,或者你的插件已全部兼容 Folia 那你就可以选择切换到这个核心你的tps有绝对巨大的提升(甚至超过了 Leaf )

第三步 - 优化服务端配置

目前Bilibili上面的配置都是很老的不推荐使用

文档里的 调服务端配置 比较新,非常推荐

第四步 - 更换硬件

不要无脑换硬件! 首先要知道自己的硬件瓶颈在哪里。如果 CPU 负荷过高,建议先排除 CPU 异常占用,再看 CPU 总体占用情况。一般来说服务器卡顿换 CPU 是最有效的,单核性能和 MC 服务器 TPS 几乎呈线性相关,但是换 CPU 几乎就相当于要换一台机器,迁移对于新手来说并不是易事。

对于单端服务器来说超过8核心的部分基本很难通过提升 CPU 核心数量提升 TPS 。不要动不动就买E5 然后卡了就加 4 核心 8G 内存,更多也没用的。

对于群组服务器来说,一般核心数量都会占用上,但是内存可能会有些捉急,对于每一个普通的生存服来说内存的推荐值为 8G - 20G 更多更少都是不推荐的。

:::warning 如果发现 CPU 占用和内存占用都不是很高但是服务器卡卡的,请考虑是不是服务器带宽受限导致玩家 ping 值突然升高的问题。请分清楚 TPS 低导致的卡顿MSPT高导致的卡顿带宽占满导致的卡顿。 :::

第五步 - 更换操作系统

无论在性能还是稳定性, Linux 都比 Windows 更适合用于开服,对于 Linux 根据自己的使用经验选择即可,如果没有使用经验可以先使用 Ubuntu 等主流系统。

如果想要了解更多请前往进阶Linux开服教程

第六步 - 性能分析

通用的一些解决方法看来已经差不多做好了,每个服务器都有自己最导致滞后的因素,可能是实体太多,可能是玩家机器多,也可能是某些插件写的太屎... 如此,那么应该如何知道服务器为何卡顿呢?对咯! 性能分析!

如果你是个完完全全的新手,或者懒得分析,想请教别人分析应该怎么办呢? 请转跳到 怎么让大佬帮我 如果你不想求助别人,亦或者你想有一些进步,请参考 性能分析