IDEA 与 SpringBoot 项目 JVM 堆内存最优配置(纯 JVM 参数,无环境干扰)
·
适用场景:解决项目启动慢、运行卡顿、GC 频繁、OOM 问题,纯 JVM 堆内存 + 性能参数,不含 dev/test/prod 环境配置
一、前言
很多小伙伴在开发时经常遇到:
- IDEA 本身卡顿、编译慢
- SpringBoot 项目启动巨慢
- 运行时接口响应慢、频繁 GC
- 堆内存溢出(OOM)
本质原因:默认 JVM 堆内存太小,没有做合理分配。本文给出可直接 CV的 IDEA 自身 JVM 配置 + 项目运行 JVM 配置,适配 16G 内存开发机(8G/32G 可按需微调)。
二、IDEA 自身 JVM 堆内存配置(解决编辑器卡顿)
1. 打开配置入口
IDEA 顶部菜单栏:Help → Edit Custom VM Options
2. 直接替换为以下配置(16G 内存推荐)

# 堆内存
-Xms2g
-Xmx2g
# 元空间
-XX:MetaspaceSize=512m
-XX:MaxMetaspaceSize=1024m
# 编译缓存
-XX:ReservedCodeCacheSize=512m
# GC
-XX:+UseG1GC
-XX:MaxGCPauseMillis=200
# 其他优化
-Dfile.encoding=UTF-8
-XX:+HeapDumpOnOutOfMemoryError
3. 内存说明
-Xms/-Xmx:最小 / 最大堆内存,建议设为相同值,避免动态扩容卡顿- 16G 电脑:IDEA 给 2g 足够
- 8G 电脑:可改为
-Xms1g -Xmx1g - 32G 电脑:可改为
-Xmx4g
修改后重启 IDEA 生效。
三、SpringBoot 项目运行 JVM 堆内存配置(重点)
1. 配置位置
Run/Debug Configurations → 找到你的 SpringBoot 启动类→ VM options(中文版:虚拟机选项)
2. 纯 JVM 配置(无任何环境参数,直接复制)
plaintext
-Xms6144m -Xmx8192m -XX:ReservedCodeCacheSize=512m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:+HeapDumpOnOutOfMemoryError -XX:SoftRefLRUPolicyMSPerMB=50 -XX:CICompilerCount=2 -XX:+UnlockExperimentalVMOptions -XX:+UseStringDeduplication
3. 参数说明(写博客必备)
表格
| 参数 | 作用 |
|---|---|
-Xms6144m |
初始堆内存 6GB,启动即分配,避免扩容卡顿 |
-Xmx8192m |
最大堆内存 8GB,16G 电脑最佳值 |
-XX:+UseG1GC |
使用 G1 低延迟垃圾回收器 |
-XX:MaxGCPauseMillis=200 |
控制 GC 最大停顿 200ms |
-XX:+UseStringDeduplication |
字符串去重,节省内存 |
-XX:+HeapDumpOnOutOfMemoryError |
OOM 时自动生成快照,方便排查 |
4. 不同内存机器微调
- 8G 内存:
plaintext
-Xms2g -Xmx4g ...其余不变 - 32G 内存:
plaintext
-Xms12g -Xmx16g ...其余不变
更多推荐





所有评论(0)