jvm配置启动参数
参数名 | 说明 |
---|---|
-XX:+PrintGCDetails | 打印gc日志详细信息 |
-XX:+PrintGCTimeStamps | 打印gc发生时相对jvm启动的时间戳,(后来加入了PrintGCDateStamps,打印gc发生的日期) |
-Xloggc | 设置gc日志的生成位置 |
-Xms4096M | 堆容量初始值 |
-Xmx4096M | 堆容量最大值 |
-Xmn1024M | 新生代容量,所以老年代容量 = 堆容量 - 新生代容量 = 3072M |
-Xss256K | 线程堆栈空间大小 |
-XX:MaxDirectMemorySize | Direct Buffer Memory大小 |
-Djava.awt.headless=true | 使用缺少外设的系统配置模式 |
-Dfile.encoding=UTF-8 | 设置编码规范 |
jmx配置用于远程管理
参数名 | 说明 |
---|---|
-XX:+HeapDumpOutOfMemoryError | 当出现OOM时,打印堆快照 |
-XX:HeapDumpPath | 堆快照打印路径,建议文件后缀设为hprof,可被MAT识别 |
-XX:+DisableExplicitGC | 关闭System.gc() |
-XX:SurvivorRatio=1 | Eden区与Survivor区的大小比值 |
-XX:+UserConcMarkSweepGC | 使用CMS收集器 |
-XX:+UserParNewGC | 新生代使用ParNew收集器 |
-XX:+CMSParallelRemarkEnabled | 降低标记停顿 |
-XX+UseCMSCompactAtFullCollection | 在full gc的时候,对年老代的压缩 |
-XX:CMSFullGCsBeforeCompaction=0 | full gc后不压缩老年代内存空间 |
-XX:LargePageSizeInBytes | 内存页的大小 |
-XX:+UseFastAccessorMethods | 原始类型的快速优化 |
-XX:+UseCMSInitiatingOccupancyOnly | 使用手动定义初始化定义开始CMS收集,禁止hostspot自行触发CMS GC |
-XX:CMSInitiatingOccupancyFraction=80 | 老年代使用80%后开始CMS收集 |
-XX:SoftRefLRUPolicyMSPerMB=0 | 每兆堆空闲空间中SoftReference的存活时间为0秒 |