Skip to content

第五章 日常维护与管理

恭喜你!至此,你的服务器已经成功搭建并运行起来。这一章会指导你如何让服务器稳定运行。

备份是服务器管理中相当重要的环节,谁也不能保证服务器不会出现一些意外情况(如核弹爆炸,熊孩子毁图等),进行定期备份可以很大程度上减小这类恶性事件的影响。 一般对于正常运行的服务器,往往定期备份地图文件即可,这分为以下几种情况:

  1. 如果你的服务端根目录内同时包含 world 、 world_nether 、 world_the_end 多个世界文件夹,请备份这些所有文件夹。
  2. 如果你的服务端根目录内仅包含 world 这一个世界文件夹,备份这一个文件夹即可。 推荐将备份的地图文件打包为压缩包,并以备份时间命名,便于后续管理。

你可以写一个定时运行的程序,或者利用相应模组/插件来自动完成地图备份操作。具体内容可在网上自行搜索。

服务器搭建成功后,保持其稳定流畅运行是下一个重要目标。这一小节可以帮助你发现瓶颈(如卡顿、延迟、崩溃),并找到解决方案。

TPS (Ticks Per Second): 每秒游戏刻数

  • 理想值为 20.0。这代表服务器一秒处理了20个游戏刻,游戏时间与现实时间同步。
  • 低于 20.0意味着服务器变慢,游戏内会出现延迟(例如,方块破坏变慢、生物移动卡顿)。
  • 低于 18.0玩家就能明显感觉到卡顿。
  • 持续低于 15.0则属于严重性能问题。

对于 Paper 等服务端,可能自带了/tps、/mspt等命令来查看服务器的状态,但这并不是其他服务端所拥有的。更为通用的方法,应当是安装一个专业的性能分析器,我们通常使用 spark 来完成这一操作。 spark 拥有插件和模组两种版本,可以适用于 Forge / Fabric / Bukkit / Sponge 等所有服务端(客户端中不需要安装也可以正常进入服务器)。 a) 安装 spark

  1. 从spark官网上下载你对应服务端的.jar文件。适用于较老游戏版本的 spark 在页面下方。
  2. 将其放入服务端根目录下的plugins(插件端) /mods(模组端)内。
  3. 启动服务器。 b) 使用 spark 进行诊断
  • 实时查看性能指标:在游戏内或服务器输入/spark health或/spark tps,可以快速查看服务器当前的TPS、 CPU利用率和内存使用量等信息。
  • 生成性能分析报告:这是定位服务器卡顿原因的最强工具。
    1. 当服务器卡顿时,输入/spark profiler start开始采样。
    2. 等待30-60秒,让采样器收集足够数据。
    3. 输入/spark profiler stop停止采样, spark 会生成一个在线报告链接。
    4. 将这份报告扔给AI进行分析,或者发送给XDUCraft技术组。这通常就能够判断出是哪个模组/机器/实体/事件等造成了服务器卡顿。

通过分析报告,你通常可以发现这些问题:

  1. 实体/掉落物过多。
  2. 机器阵列过于复杂或密集。
  3. 某个插件/模组自身存在问题。
  4. 玩家跑图时区块加载过快。
  5. 内存/CPU性能不足。 有针对、有选择地进行优化,可以大幅提升泥服的玩家体验。
  • 不要滥用 OP ,拥有 OP 意味着拥有服务器的一切权力,极不安全。
  • 只将 OP 授予你完全信任的核心人员。
  • 如果你需要给某个玩家配置单独的指令权限,可以采用下文的高级管理方法。

有很多插件/模组可以实现权限的精确管理,以下以 LuckPerms 为例。 LuckPerms (LuckPerms官网)是一个非常出色的Minecraft权限管理插件/模组,你可以用其来精细化管理每个玩家的具体权限。(同样地,客户端中不需要安装此模组也能进入服务器) 关于 LuckPerms 的具体使用方法,可以自行上网搜索,或查看官方的入门教程,此处暂且略去。