idea 中vm option 配置

idea 中vm option 配置

编辑位置

help -> edit custom vm option

内容

配置示例

properties 复制代码
-Xms1g
-Xmx3g
-XX:ReservedCodeCacheSize=1024m
-XX:+UseG1GC
-XX:G1ReservePercent=20
-XX:InitiatingHeapOccupancyPercent=30
-XX:SoftRefLRUPolicyMSPerMB=50
-Djava.net.preferIPv4Stack=true

详细解释

properties 复制代码
8GB 内存系统(基础优化)
-Xms512m                  # 初始堆内存(建议设为物理内存的 1/16)
-Xmx2048m                 # 最大堆内存(建议不超过物理内存的 1/4,8GB 系统设为 2GB)
-XX:ReservedCodeCacheSize=512m  # 代码缓存大小(提升类加载和编译速度)
-XX:+UseG1GC              # 使用 G1 垃圾回收器(平衡吞吐量和延迟)
-XX:SoftRefLRUPolicyMSPerMB=50  # 软引用存活时间(减少内存占用)
-ea                       # 启用断言(开发调试用,可选)
-Dsun.io.useCanonCaches=false  # 禁用文件系统缓存(避免某些系统下的性能问题)
-Djava.net.preferIPv4Stack=true  # 优先使用 IPv4(避免网络相关延迟)
-XX:+HeapDumpOnOutOfMemoryError  # 内存溢出时生成堆快照(便于排查问题)
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof  # 堆快照保存路径
16GB+ 内存系统(高性能配置)
-Xms1024m                 # 初始堆内存(1GB,避免频繁扩容)
-Xmx8192m                 # 最大堆内存(8GB,16GB 系统可设为 8GB,32GB 可设为 12-16GB)
-XX:ReservedCodeCacheSize=1024m  # 代码缓存(大型项目建议 1GB)
-XX:+UseG1GC
-XX:G1ReservePercent=20   # 预留堆空间比例(避免 G1 回收时内存不足)
-XX:InitiatingHeapOccupancyPercent=30  # G1 启动回收的堆占用阈值(提前回收,减少卡顿)
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof
关键参数说明
内存分配(核心参数):
Xms:初始堆内存,设太小会导致 JVM 频繁扩容,建议与 Xmx 接近(减少动态调整开销)。
Xmx:最大堆内存,是影响性能的关键。太小会频繁 GC 甚至 OOM;太大会占用过多系统内存,导致其他程序卡顿。
垃圾回收器:
XX:+UseG1GC:推荐使用 G1 回收器(IDE 默认可能已启用),它适合大内存场景,能平衡响应速度和吞吐量,减少卡顿。
避免使用 XX:+UseConcMarkSweepGC(CMS 已逐渐被 G1 替代,且在大内存下性能较差)。
代码缓存:
XX:ReservedCodeCacheSize:用于存储 JIT 编译后的代码,不足会导致频繁重新编译,大型项目建议 512m-1024m。
相关推荐
tachibana218 分钟前
hot100 前 K 个高频元素(347)
java·数据结构·算法·leetcode
张太行_28 分钟前
vscode在open folder如何设置默认路径
ide·vscode·编辑器
万亿少女的梦16837 分钟前
基于Spring Boot、Java与MySQL的网络订餐系统设计与实现
java·spring boot·mysql·系统设计·网络订餐
咩咩啃树皮9 小时前
第40篇:Vue3组件化开发精讲——组件拆分、复用、父子通信、工程化架构
java·前端·架构
鱟鲥鳚10 小时前
Spring Boot 集成 LangChain4j:从模型调用到 Tool Calling(Demo版)
java·spring boot
大模型码小白11 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
腾渊信息科技公司12 小时前
Spring Boot对接MES实战:视觉检测数据自动同步方案
java·人工智能·spring boot·后端·计算机视觉·ai·软件需求
爱笑的源码基地13 小时前
高并发 Redis 缓存门诊HIS系统源码,含财务统计药房进销存
java·程序·门诊系统·诊所系统·云诊所源码
wuqingshun31415913 小时前
TCP超时重传机制是为了解决什么问题?
java
莫逸风15 小时前
【AgentScope 2.0】 0. 学习指南
java·llm·agent·agentscope