(1)1001 端口 mt.zxw.ltd 【4G 固定】
/www/server/java/jdk-21.0.2/bin/java \
-Xms4G \
-Xmx4G \
-Xss512k \
-XX:+UseG1GC \
-XX:MaxGCPauseMillis=150 \
-XX:+ParallelRefProcEnabled \
-XX:+ExplicitGCInvokesConcurrent \
-XX:+UseStringDeduplication \
-XX:MetaspaceSize=128M \
-XX:MaxMetaspaceSize=512M \
-XX:MaxDirectMemorySize=1G \
-Dsun.rmi.dgc.client.gcInterval=Long.MAX_VALUE \
-Dsun.rmi.dgc.server.gcInterval=Long.MAX_VALUE \
-XX:+HeapDumpOnOutOfMemoryError \
-XX:HeapDumpPath=/www/wwwroot/java/1-mt.zxw.ltd/heapdump.hprof \
-jar /www/wwwroot/java/1-mt.zxw.ltd/zxwmt-admin.jar \
--server.port=1001
(2)1002 端口 it.zxw.ltd 【2G 固定】
/www/server/java/jdk-21.0.2/bin/java \
-Xms2G \
-Xmx2G \
-Xss512k \
-XX:+UseG1GC \
-XX:MaxGCPauseMillis=150 \
-XX:+ParallelRefProcEnabled \
-XX:+ExplicitGCInvokesConcurrent \
-XX:+UseStringDeduplication \
-XX:MetaspaceSize=128M \
-XX:MaxMetaspaceSize=512M \
-XX:MaxDirectMemorySize=1G \
-Dsun.rmi.dgc.client.gcInterval=Long.MAX_VALUE \
-Dsun.rmi.dgc.server.gcInterval=Long.MAX_VALUE \
-XX:+HeapDumpOnOutOfMemoryError \
-XX:HeapDumpPath=/www/wwwroot/java/2-it.zxw.ltd/heapdump.hprof \
-jar /www/wwwroot/java/2-it.zxw.ltd/zxwit-admin.jar \
--server.port=1002
如需升级到 4G,将 -Xms2G -Xmx2G 改为 -Xms4G -Xmx4G 即可,其余参数不变。
(3)1003 端口 suan.zxw.ltd 【8G 固定】
/www/server/java/jdk-21.0.2/bin/java \
-Xms8G \
-Xmx8G \
-Xss512k \
-XX:+UseG1GC \
-XX:MaxGCPauseMillis=150 \
-XX:+ParallelRefProcEnabled \
-XX:+ExplicitGCInvokesConcurrent \
-XX:+UseStringDeduplication \
-XX:MetaspaceSize=128M \
-XX:MaxMetaspaceSize=512M \
-XX:MaxDirectMemorySize=2G \
-Dsun.rmi.dgc.client.gcInterval=Long.MAX_VALUE \
-Dsun.rmi.dgc.server.gcInterval=Long.MAX_VALUE \
-XX:+HeapDumpOnOutOfMemoryError \
-XX:HeapDumpPath=/www/wwwroot/java/3-suan.zxw.ltd/heapdump.hprof \
-jar /www/wwwroot/java/3-suan.zxw.ltd/lirun-admin.jar \
--server.port=1003
(4)1004 端口 test.zxw.ltd 【8G 固定】
/www/server/java/jdk-21.0.2/bin/java \
-Xms8G \
-Xmx8G \
-Xss512k \
-XX:+UseG1GC \
-XX:MaxGCPauseMillis=150 \
-XX:+ParallelRefProcEnabled \
-XX:+ExplicitGCInvokesConcurrent \
-XX:+UseStringDeduplication \
-XX:MetaspaceSize=128M \
-XX:MaxMetaspaceSize=512M \
-XX:MaxDirectMemorySize=2G \
-Dsun.rmi.dgc.client.gcInterval=Long.MAX_VALUE \
-Dsun.rmi.dgc.server.gcInterval=Long.MAX_VALUE \
-XX:+HeapDumpOnOutOfMemoryError \
-XX:HeapDumpPath=/www/wwwroot/java/4-test.zxw.ltd/heapdump.hprof \
-jar /www/wwwroot/java/4-test.zxw.ltd/lirun-admin.jar \
--server.port=1004
(5)1003 端口 demo.hsx.ltd 【4G 固定】
/www/server/java/jdk-21.0.2/bin/java \
-Xms4G \
-Xmx4G \
-Xss512k \
-XX:+UseG1GC \
-XX:MaxGCPauseMillis=150 \
-XX:+ParallelRefProcEnabled \
-XX:+ExplicitGCInvokesConcurrent \
-XX:+UseStringDeduplication \
-XX:MetaspaceSize=128M \
-XX:MaxMetaspaceSize=512M \
-XX:MaxDirectMemorySize=1G \
-Dsun.rmi.dgc.client.gcInterval=Long.MAX_VALUE \
-Dsun.rmi.dgc.server.gcInterval=Long.MAX_VALUE \
-XX:+HeapDumpOnOutOfMemoryError \
-XX:HeapDumpPath=/www/wwwroot/java/demo.hsx.ltd/heapdump.hprof \
-jar /www/wwwroot/java/demo.hsx.ltd/lirun-admin.jar \
--server.port=1003
配置统一说明:
| 参数 | 作用 |
| ---------------------------------- | ------------------------------- |
| `-Xms = -Xmx` | 固定堆大小,避免运行时扩缩容抖动 |
| `-XX:+UseG1GC` | 使用 G1 垃圾回收器 |
| `-XX:MaxGCPauseMillis=150` | 目标 GC 停顿不超过 150ms |
| `-XX:+ParallelRefProcEnabled` | 并行处理引用对象,缩短 GC 时间 |
| `-XX:+ExplicitGCInvokesConcurrent` | 将 `System.gc()` 转为并发执行,不卡业务 |
| `-XX:+UseStringDeduplication` | G1 专属,自动去重重复字符串,节省内存 |
| `-XX:MaxDirectMemorySize` | 限制堆外直接内存上限(4G 应用配 1G,8G 应用配 2G) |
| `-Dsun.rmi.dgc.*.gcInterval` | 禁用 RMI 定时触发 `System.gc()` 的行为 |

统一规则说明(以后新加服务直接照搬这套参数)
- JVM 参数全部放 -jar 前面,顺序标准,全部生效
- 统一去掉了高危的
-XX:+DisableExplicitGC,改用ExplicitGCInvokesConcurrent安全替代 - 全部开启:G1GC、GC 停顿 150ms、引用并行处理、字符串去重
- 堆外内存限制:小服务 1G、8G 大服务 2G,防堆外 OOM
- 闭 RMI 无效定时 GC,减少无故卡顿
一键停止所有 Java 服务(维护用)
pkill -f java停完再按上面命令逐个启动即可。