1、jps VM进程监控
D:\commonsoft\jdk\jdk1.7.0_x64\bin>jps -l
34416 sun.tools.jps.Jps
35980
32016 com.roncoo.education.SpringBootDemo21Application
D:\commonsoft\jdk\jdk1.7.0_x64\bin>jps -v 启动时候JVM参数
35980 -Dosgi.requiredJavaVersion=1.6 -Xms256m -Xmx1024m -vm D:/commonsoft/jdk/jdk1.7.0_45/bin/javaw.exe -XX:MaxPermSize=256m
28500 Jps -Dapplication.home=D:\commonsoft\jdk\jdk1.7.0_x64 -Xms8m
32016 SpringBootDemo21Application -Dfile.encoding=UTF-8
D:\commonsoft\jdk\jdk1.7.0_x64\bin>jps -m 启动Main函数参数
35980
32016 SpringBootDemo21Application
29864 Jps -m
2、Jstat VM统计监控信息
-gc 监视java堆情况,包含Eden区,两个Survivor区,老年代,永久代等 已经空间和GC时间
-gcutil同上,主要输出关注的已经使用空间和总空间占比。
D:\commonsoft\jdk\jdk1.7.0_x64\bin>jstat -gc 35980 200 2
S0C S1C S0U S1U EC EU OC OU PC PU YGC YGCT FGC FGCT GCT
22016.0 4608.0 0.0 4531.7 75264.0 61248.5 239616.0 105126.8 137728.0 105855.2 33 0.582 13 5.335 5.916
22016.0 4608.0 0.0 4531.7 75264.0 61248.5 239616.0 105126.8 137728.0 105855.2 33 0.582 13 5.335 5.916
S0C 第一个幸存者区的总大小 S1C 第二个幸存者区的总大小
S0U第一个幸存者区的已使用的大小 S1U第二个幸存者区的已使用的大小
EC 伊甸区的总大小 EU 伊甸区已使用的大小 以上的属于新生代(Young)。
OC 老年区的总大小 OU 老年区已使用的大小 以上的属于老年代(Old)。
MC 方法区的总大小 MU 方法区已使用大小
CCSC压缩类总大小 CCSU 压缩类已使用大小 以上的属于永久代(Perm)。
YGC young gc次数 YGCT young gc总时间
FGC full gc 次数 FGCT full gc 总时间 GCT gc的总时间
D:\commonsoft\jdk\jdk1.7.0_x64\bin>jstat -gcutil 35980 200 2
S0 S1 E O P YGC TYGC FGC FGCT GCT
73.01 0.00 4.10 43.87 76.86 34 0.595 13 5.335 5.929
73.01 0.00 4.10 43.87 76.86 34 0.595 13 5.335 5.929
S0和S1分别表示Survivor0和Survivor1区,E:eden区,O:老年代,P:永久代
YGC:Minor GC, 表示YoungGc 34次, GCT :表示YGC总耗时5.929秒。
FGC :Full Gc 表示发生 13, FGCT:full gc time, 总耗时 5.335 秒
D:\commonsoft\jdk\jdk1.7.0_x64\bin>
-class (类加载器) -compiler (JIT) -gc (GC堆状态) -gccapacity (各区大小)
-gccause (最近一次GC统计和原因) - gcnew (新区统计) -gcnewcapacity (新区大小) -gcold (老区统计)
-gcoldcapacity (老区大小) -gcpermcapacity (永久区大小) -gcutil (GC统计汇总) -printcompilation (HotSpot编译统计)
1、jstat –class<pid> : 显示加载class的数量,及所占空间等信息。
Loaded 装载的类的数量 Bytes 装载类所占用的字节数
Unloaded 卸载类的数量 Bytes 卸载类的字节数 Time 装载和卸载类所花费的时间
2、jstat -compiler <pid>显示VM实时编译的数量等信息。
Compiled 编译任务执行数量 Failed 编译任务执行失败数量
Invalid 编译任务执行失效数量 Time 编译任务消耗时间
FailedType 最后一个编译失败任务的类型 FailedMethod 最后一个编译失败任务所在的类及方法