mirror of
https://github.com/postyizhan/NitWikit.git
synced 2025-01-12 15:24:53 +08:00
112 lines
6.0 KiB
Markdown
112 lines
6.0 KiB
Markdown
---
|
||
sidebar_position: 1
|
||
---
|
||
|
||
# 概览
|
||
|
||
什么是优化? 优化不是装插件, 首先得明白为什么服务器会卡, TPS是什么, 每个服务器可能有自己的卡顿原因, 在这部分先做最基础的通用优化, 如果你使用后作用不大请参考性能分析板块.
|
||
|
||
如果你现在已经开好服务器有了一定的玩家数量, 那么请一定查看 [优化插件](优化插件.md), 停止此类无效"优化", 然后根据下面的步骤进行操作.
|
||
|
||
# 第一步 - Java 优化
|
||
|
||
:::info
|
||
几乎任何情况下, 所有服务器都会因为选择合适的Java而受益, 而这本身是最没有代价的, 仅仅需要你下载一个小小的Java安装程序, 或者更改JVM参数(大白话来说就是开服参数).
|
||
:::
|
||
|
||
## 选择合适的 Java
|
||
|
||
### 版本
|
||
|
||
原则上选择最新的兼容的Java版本, 可以体验到最新的优化, 并且大部分现代插件都对最新版的特性有专门的兼容(比如AuthMeReReload).
|
||
|
||
根据各路大佬的测试Zulu相较Oracle(你可以看做"公版")更适合开MC服务器
|
||
|
||
[Zulu下载链接](https://www.azul.com/downloads/?package=jdk#zulu)
|
||
|
||
下滑并选择你的操作系统/Java版本等即可下载安装.
|
||
|
||
## JVM 参数优化
|
||
|
||
可以在[JVM参数生成器](https://startmc.jakaco.xyz/)生成最适合你服务器的JVM参数, 然后复制并保存到你的启动脚本里, 然后重启就完成了
|
||
|
||
别急. 还有一些更高阶的参数. [拓展阅读](https://blog.binklac.com/e6ad4dc21152)
|
||
|
||
# 第二步 - 更换核心
|
||
在插件和配置层面能进行的优化其实不多(受限于API还有服务端核心), 所以最好的方法是更换服务器核心.
|
||
|
||
:::warning
|
||
什么年代了,任何时候都不要再使用CraftBukkit和Spigot了. 追求稳定/性能上paper, 追求原版特性上Leaves.
|
||
:::
|
||
|
||
<details>
|
||
<summary>选择更换的服务器核心</summary>
|
||
|
||
此处只是作为最基础的核心选择推荐,完整版请查看[核心选择](/docs/准备工作/服务器核心选择.md)
|
||
|
||
## Paper - 追求稳定 *推荐度★★★★☆*
|
||
|
||
如果是第一次开服, 或者追求稳定, 请使用Paper. 任何时候想更换其他核心可以随时更换如Purpur/Leaf等核心.
|
||
|
||
## Purpur - 稳定性与性能最佳选择 *推荐度★★★★★*
|
||
|
||
如果你并不是追求更极致的性能, Purpur 你最好的选择, 只需要替换掉核心就可以, Purpur 兼容全部插件!!
|
||
|
||
## Leaf - 极致性能 *推荐度★★★★☆*
|
||
|
||
前往Leaf的Github Action 下载最新核心, 然后替换!!, Leaf 兼容你的绝大部分插件(已知仅有一个不兼容, 但在插件的分支解决)
|
||
|
||
## Folia - 硬件利用率超高的高性能, 但兼容性较差 *推荐度★★★☆☆*
|
||
|
||
如果你的服务器对插件的需求不大, 或者你的插件已全部兼容Folia, 那你就可以选择切换到这个核心, 你的tps有绝对巨大的提升(甚至超过了Leaf)
|
||
|
||
</details>
|
||
|
||
# 第三步 - 优化服务端配置
|
||
|
||
目前, Bilibili上面的配置都是很老的, 不推荐使用
|
||
|
||
文档里的 [调服务端配置](调服务端配置.md) 比较新, 非常推荐
|
||
|
||
# 第四步 - 更换硬件
|
||
|
||
不要无脑换硬件! 首先要知道自己的硬件瓶颈在哪里. 如果CPU负荷过高, 建议先排除CPU异常占用, 再看CPU总体占用情况. 一般来说服务器卡顿换CPU是最有效的, 单核性能和MC服务器TPS几乎呈线性相关, 但是换CPU几乎就相当于要换一台机器, 迁移对于新手来说并不是易事.
|
||
|
||
对于单端服务器来说, 超过8核心的部分基本很难通过提升CPU核心数量提升TPS. 不要动不动就买E5 然后卡了就加4核心8g内存, 更多也没用的.
|
||
|
||
对于群组服务器来说, 一般核心数量都会占用上, 但是内存可能会有些捉急, 对于每一个普通的生存服来说内存的推荐值为 8G-20G 更多更少都是不推荐的.
|
||
|
||
:::warning
|
||
如果发现CPU占用和内存占用都不是很高但是服务器卡卡的, 请考虑是不是服务器带宽受限导致玩家ping值突然升高的问题. 请分清楚TPS低导致的卡顿, MSPT高导致的卡顿, 带宽占满导致的卡顿.
|
||
:::
|
||
|
||
# 第五步 - 更换操作系统
|
||
|
||
Linux 比 Windows 更适合用于开服, 对于 Linux 根据自己的使用经验选择即可, 如果没有使用经验可以先使用Ubuntu等主流系统.
|
||
|
||
1. 更快的发包速度和接收速度, 接入服务器速度将提升数十毫秒起, 当面对假人攻击/DDOS攻击时会更加稳定.
|
||
2. 更好的性能, 根据测试TPS能提升8-15%.
|
||
3. 更低的内存占用, 对于Windows服务器一般开机会占用1-2g内存. 而一般的Linux系统开机后占用往往不到0.5g.
|
||
4. Linux的稳定性是Windows无论如何也无法比拟的.
|
||
5. Linux安全性更高, 开源系统, 有社区的支持
|
||
6. Linux支持文件占用直接删除(也就是说可以自动更新插件, 不像Windows那样提示文件被占用)
|
||
|
||
:::info
|
||
|
||
可能会有小伙伴说:"Linux太难操作了, 根本不会用." 其实大多数开Linux服务器的服主也不是纯纯使用Linux编辑插件配置, 那么好, 我们为小白推荐三个面板辅助我们开服.
|
||
|
||
1. [MCSM](https://docs.mcsmanager.com/zh_cn/) 全名 MCSManager 是一款开源,分布式,一键部署,支持 Minecraft 和 Steam 游戏服务器 的控制面板.
|
||
2. [1Panel](https://1panel.cn/) 是新一代的 Linux 服务器运维管理面板,支持 Web 图形界面管理、快速建站、应用商店、安全可靠、一键备份等功能.
|
||
3. [宝塔面板](https://www.bt.cn/) 是一款支持Linux和Windows系统的服务器运维管理工具,提供资源监控、文件管理、软件安装等功能.
|
||
|
||
:::
|
||
|
||
# 第六步 - 性能分析
|
||
|
||
通用的一些解决方法看来已经差不多做好了, 每个服务器都有自己最导致滞后的因素, 可能是实体太多, 可能是玩家机器多, 也可能是某些插件写的太屎... 如此, 那么应该如何知道服务器为何卡顿呢. 对咯! 性能分析!
|
||
|
||
如果你是个完完全全的新手, 或者懒得分析, 想请教别人分析应该怎么办呢? 请转跳到 [怎么让大佬帮我](怎么让大佬帮我.md)
|
||
如果你不想求助别人, 亦或者你想有一些进步, 请参考 [性能分析](性能分析.md)
|
||
|
||
:::
|