命令操作
-class 监视类装载,卸载数量,总空间及类装载所耗费时间。
-gc 监视java堆状况,包括eden区,2个survivor区、老年代、永久代等的容量、已用空间、GC时间合计等信息
-gccapacity 监视内容与-gc基本相同,但输出主要关注java 堆各个区域使用到的最大和最小空间
-gcutil 监视内容与-gc基本相同,但输出主要关注已使用空间占总空间百分比
-gccause 与-gcutil功能一样,但是会额外输出导致上一次gc产生的原因
-gcnew 监视新生代gc的状况
-gcold 监视年老代gc的状况
-gcoldcapacity 监视内容基本与-gcold基本相同,输出主要关注最大和最小空间
-gcpermcapacity 输出永久代使用到的最大和最小空间
-compiler 输出JIT编译器编译过的方法、耗时等信息
-printcompilation 输出已经被JIT编译的方法
一 jstat -gc
下面以进程35713示例
执行jstat -gc 35713 250 2
注:
35713 表示进程Id
250 表示采集间隔
2 采集次数
显示内容
二 jstat -gcutil
表明该进程的两个survivor区都是空的、新生代使用97.5%的空间 、年老代使用12.37%空间,元空间使用98.52%
ccs 压缩比例97.21%、年轻代gc发生次数138次,耗时3.591秒,年老代发生gc次数744次 耗时215.295秒 GCT垃圾回收消耗总时间218.886秒
三 jstat -gccause
四 jstat - class
loaded 加载的类的数量,bytes所占空间大小。unloaded 未加载的类数量 time加载耗时
五 jstat -compile
compiled 编译的数量 failed 失败数量 invalid不可用的数量 failedMethod 失败方法
原文:https://www.cnblogs.com/songchaolin/p/12903205.html