Minecraft 服务器启动命令大全
目录
基础启动命令
最简启动(默认1G内存)
java -jar server.jar nogui
带内存控制(示例分配4G)
java -Xmx4G -Xms2G -jar server.jar nogui
Paper/Spigot核心优化命令
# 使用Aikar's Flags优化参数
java -Xms4G -Xmx4G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -jar paper.jar nogui
Forge
# 1.12.2及以下版本
java -Xmx4G -Xms4G -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -jar forge.jar nogui
# 1.16+版本
java -Xmx4G -Xms4G -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -jar forge.jar nogui
Fabric
# 带Fabric优化参数
java -Xmx4G -Xms4G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -jar fabric-server-launch.jar nogui
JVM调优参数详解
参数名称 | 参数类型 | 默认值 | 推荐值 | 作用说明 |
---|---|---|---|---|
-Xmx |
内存 | 系统内存25% | 物理内存的70-80% | 最大堆内存大小(如-Xmx4G ) |
-Xms |
内存 | 系统内存1/64 | 等于-Xmx 值 |
初始堆内存大小(避免内存动态扩展的开销) |
-XX:+UseG1GC |
GC | - | 必选 | 启用G1垃圾收集器(适合大内存场景) |
-XX:MaxGCPauseMillis= |
GC | 200ms | 100-200 | 目标最大GC停顿时间(毫秒) |
-XX:G1NewSizePercent= |
GC | 5% | 30-40 | 新生代初始内存占比(相对于整个堆) |
-XX:G1MaxNewSizePercent= |
GC | 60% | 40-50 | 新生代最大内存占比 |
-XX:ParallelGCThreads= |
GC | CPU核心数 | CPU核心数的1/4 | 并行GC线程数(避免占用全部CPU资源) |
-XX:ConcGCThreads= |
GC | - | CPU核心数的1/4 | 并发GC线程数 |
-XX:+AlwaysPreTouch |
内存 | 禁用 | 推荐 | 启动时预分配所有内存(避免运行时分配延迟) |
-XX:+DisableExplicitGC |
GC | 禁用 | 推荐 | 禁止代码中调用System.gc() |
-XX:+PerfDisableSharedMem |
性能 | 禁用 | 高负载服务器推荐 | 禁用性能共享内存(可减少JVM写日志时的停顿) |
-XX:+UseStringDeduplication |
内存 | 禁用 | 1.8u20+版本推荐 | 字符串去重(节省内存) |
-XX:SurvivorRatio= |
GC | 8 | 6-10 | Eden区与Survivor区的比例(如-XX:SurvivorRatio=8 表示8:1:1) |
-XX:MaxTenuringThreshold= |
GC | 15 | 1-3 | 对象晋升老年代的年龄阈值(降低可减少Young GC时间) |
-XX:+AggressiveOpts |
性能 | 禁用 | JDK 7推荐 | 启用激进优化特性 |
-XX:+UseLargePages |
内存 | 禁用 | Linux服务器推荐 | 使用大内存页(需系统配置支持) |
-XX:SoftRefLRUPolicyMSPerMB= |
GC | 1000 | 50-100 | 软引用存活时间(毫秒/MB,降低可减少内存占用) |
-XX:+OptimizeStringConcat |
性能 | 启用 | 必选 | 优化字符串拼接操作 |
-XX:+UseFastAccessorMethods |
性能 | 启用 | 必选 | 优化getter/setter方法调用 |
-XX:+UseCompressedOops |
内存 | 64位系统启用 | 必选 | 使用压缩指针(节省内存) |
实用脚本启动
Windows脚本
@echo off
title MC-Server
java -Xmx6G -Xms3G -jar server.jar nogui
pause
Linux脚本
#!/bin/bash
while true; do
java -Xmx8G -Xms4G -jar server.jar nogui
echo "服务器将在5秒后重启..."
sleep 5
done
作者:Starvps 创建时间:2025-05-19 14:14
最后编辑:Starvps 更新时间:2025-05-19 14:31
最后编辑:Starvps 更新时间:2025-05-19 14:31