jstat命令可以查看堆内存各部分的使用量,以及加载类的数量。命令的格式如下:
jstat [-命令选项] [vmid] [间隔时间/毫秒] [查询次数]
注意:使用的jdk版本是jdk8.
[work@16-11-118qf-pms]$ jstat -class 32417
Loaded Bytes Unloaded Bytes Time
5579 10631.2 0 0.0 2.03
Loaded:加载class的数量
Bytes:所占用空间大小
Unloaded:未加载数量
Bytes:未加载占用空间
Time:时间
编译统计
[work@16-11-118qf-pms]$ jstat -compiler32417
Compiled Failed Invalid Time FailedType FailedMethod5
4280012.350
Compiled:编译数量。
Failed:失败数量
Invalid:不可用数量
Time:时间
FailedType:失败类型
FailedMethod:失败的方法
垃圾回收统计 jstat -gc 32417
[work@16-11-118qf-pms]$ jstat -gc 32417
S0C S1C S0U S1U EC EU OC OU MC MU CCSC CCSU YGC YGCT FGC FGCT GCT43520.043520.020937.70.0524288.0316827.5699392.0112.031616.030838.13712.03522.020.06400.0000.064
S0C:第一个幸存区的大小
S1C:第二个幸存区的大小
S0U:第一个幸存区的使用大小
S1U:第二个幸存区的使用大小
EC:伊甸园区的大小
EU:伊甸园区的使用大小
OC:老年代大小
OU:老年代使用大小
MC:方法区大小
MU:方法区使用大小
CCSC:压缩类空间大小
CCSU:压缩类空间使用大小
YGC:年轻代垃圾回收次数
YGCT:年轻代垃圾回收消耗时间
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间
堆内存分配临界值 jstat -gccapacity 32417
[work@16-11-118qf-pms]$ jstat -gccapacity32417NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC349184.0698880.0611328.043520.043520.0524288.0699392.01398272.0699392.0699392.00.01077248.031616.00.01048576.03712.020
NGCMN:新生代最小容量
NGCMX:新生代最大容量
NGC:当前新生代容量
S0C:第一个幸存区大小
S1C:第二个幸存区的大小
EC:伊甸园区的大小
OGCMN:老年代最小容量
OGCMX:老年代最大容量
OGC:当前老年代大小
OC:当前老年代大小
MCMN:最小元数据容量
MCMX:最大元数据容量
MC:当前元数据空间大小
CCSMN:最小压缩类空间大小
CCSMX:最大压缩类空间大小
CCSC:当前压缩类空间大小
YGC:年轻代gc次数
FGC:老年代GC次数
新生代垃圾回收统计 jstat -gcnew 32417
[work@16-11-118qf-pms]$ jstat -gcnew32417S0C S1C S0U S1U TT MTT DSS EC EU YGC YGCT43520.043520.020937.70.071543520.0524288.0316827.520.064
S0C:第一个幸存区大小
S1C:第二个幸存区的大小
S0U:第一个幸存区的使用大小
S1U:第二个幸存区的使用大小
TT:对象在新生代存活的次数
MTT:对象在新生代存活的最大次数
DSS:期望的幸存区大小
EC:伊甸园区的大小
EU:伊甸园区的使用大小
YGC:年轻代垃圾回收次数
YGCT:年轻代垃圾回收消耗时间
新生代内存统计 jstat -gcnewcapacity 32417
[work@16-11-118qf-pms]$ jstat -gcnewcapacity32417NGCMN NGCMX NGC S0CMX S0C S1CMX S1C ECMX EC YGC FGC349184.0698880.0611328.0232960.043520.0232960.043520.0697856.0524288.020
NGCMN:新生代最小容量
NGCMX:新生代最大容量
NGC:当前新生代容量
S0CMX:最大幸存1区大小
S0C:当前幸存1区大小
S1CMX:最大幸存2区大小
S1C:当前幸存2区大小
ECMX:最大伊甸园区大小
EC:当前伊甸园区大小
YGC:年轻代垃圾回收次数
FGC:老年代回收次数
老年代垃圾回收统计
[work@16-11-118qf-pms]$ jstat -gcold32417MC MU CCSC CCSU OC OU YGC FGC FGCT GCT31616.030838.13712.03522.0699392.0112.0200.0000.064
MC:方法区大小
MU:方法区使用大小
CCSC:压缩类空间大小
CCSU:压缩类空间使用大小
OC:老年代大小
OU:老年代使用大小
YGC:年轻代垃圾回收次数
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间
老年代内存统计 jstat -gcoldcapacity 32417
[work@16-11-118qf-pms]$ jstat -gcoldcapacity32417OGCMN OGCMX OGC OC YGC FGC FGCT GCT699392.01398272.0699392.0699392.0200.0000.064
OGCMN:老年代最小容量
OGCMX:老年代最大容量
OGC:当前老年代大小
OC:老年代大小
YGC:年轻代垃圾回收次数
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间
元数据空间统计jstat -gcmetacapacity 32417
[work@16-11-118qf-pms]$ jstat -gcmetacapacity32417 MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC FGCT GCT0.01077248.031616.00.01048576.03712.0200.0000.064
MCMN : 最小元数据容量
MCMX:最大元数据容量
MC:当前元数据空间大小
CCSMN:最小压缩类空间大小
CCSMX:最大压缩类空间大小
CCSC:当前压缩类空间大小
YGC:年轻代垃圾回收次数
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间
总结垃圾回收统计 jstat -gcutil 32417
[work@16-11-118qf-pms]$ jstat -gcutil 32417S0
S1 E O M CCS YGC YGCT FGC FGCT GCT48.110.0060.430.0297.5494.8820.06400.0000.064
S0:幸存1区当前使用比例
S1:幸存2区当前使用比例
E:伊甸园区使用比例
O:老年代使用比例
M:元数据区使用比例
CCS:压缩使用比例
YGC:年轻代垃圾回收次数
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间
JVM编译方法统计
[work@16-11-118qf-pms]$ jstat -printcompilation32417Compiled Size Type Method543023541sun/nio/ch/SocketChannelImpl write
Compiled:最近编译方法的数量
Size:最近编译方法的字节码数量
Type:最近编译方法的编译类型。
Method:方法名标识。