在 Java 中,“内存参数”通常指的是 JVM 堆内存及相关内存区域的配置参数。下面从常用参数、示例、不同场景配置建议几个方面说明。
-Xms512m # 初始堆大小
-Xmx1024m # 最大堆大小
✅ 建议:
-Xms 和 -Xmx 设成一样,避免频繁扩容-Xms2g -Xmx2g-Xmn512m # 年轻代大小
作用:
-XX:MetaspaceSize=128m
-XX:MaxMetaspaceSize=256m
✅ 防止类加载过多导致 OOM
-Xss256k
-XX:+UseG1GC
-XX:MaxGCPauseMillis=200
-XX:+UseConcMarkSweepGC
java -Xms2g -Xmx2g \
-Xmn512m \
-XX:MetaspaceSize=128m \
-XX:MaxMetaspaceSize=256m \
-Xss256k \
-XX:+UseG1GC \
-jar app.jar
java -XX:+UseContainerSupport \
-XX:MaxRAMPercentage=75.0 \
-XX:InitialRAMPercentage=75.0 \
-jar app.jar
✅ 推荐方式(自动适配容器内存)
| 场景 | 建议 |
|---|---|
| 小型服务 | 512m~1g |
| 普通业务服务 | 2g~4g |
| 大数据 / 批处理 | 8g+ |
| 高并发 | 增大年轻代 |
| 容器 | 使用 RAMPercentage |
jinfo <pid> | grep -i heap
jmap -heap <pid>
如果你愿意,可以告诉我:
我可以帮你直接给一套最优参数。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。