jvm常用参数
堆相关
-Xmx20M(堆最大空间)
-Xms5M(堆初始化空间)
-Xmn5 (新生代大小,Xmx = Xms 剩余为老年代)
方法区(jdk 1.7 perm 永久代 jdk1.8 meta 元空间)
1.7:-XX:PermSize(永久代初始化) -XX:MaxPermSize(永久代最大)
1.8:-XX:+UseG1GC
gc 日志参数
-XX:+PrintGCDetails(打印GC详情)
-verbose:gc(执行GC 打印相关信息)
-XX:+printGC (执行GC 打印相关信息)
-XX:+PrintGCTimeStamps(打印GC时间戳)
-Xloggc:log/gc.log(指定gc日志目录文件)
[GC[DefNew: 4416K->0K(4928K), 0.0001897 secs] 4790K->374K(15872K), 0.0002232 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]
上方日志的意思是说:这是一个新生代的GC。方括号内部的“4416K->0K(4928K)”含义是:“GC前该内存区域已使用容量->GC后该内存区域已使用容量(该内存区域总容量)”。而在方括号之外的“4790K->374K(15872K)”表示“GC前Java堆已使用容量->GC后Java堆已使用容量(Java堆总容量)”。
再往后看,“0.0001897 secs”表示该内存区域GC所占用的时间,单位是秒。