赞
踩
JVM工具之jstat查询GC统计信息分析
JVM工具之jstat查询GC统计信息分析jstat基本使用语法jstat -class 加载类统计jstat -compiler 编译统计jstat -gc 垃圾回收统计jstat -gccapacity 垃圾回收器内存空间统计jstat -gccause 垃圾回收器分析统计jstat -gcmetacapacity 元数据内存空间统计jstat -gcnew 新生代垃圾回收统计jstat -gcnewcapacity 新生代内存空间统计jstat -gcold 老年代垃圾回收统计jstat -gcoldcapacity 老年代内存空间统计jstat -gcutil 总垃圾回收统计jstat -printcompilation JVM编译方法统计
注意:在linux中,使用jdk1.8版本为例
jstat工具,检查JVM的整体运行情况,比较实用工具之一,当我们想看JVM内的Eden、survivor、年轻代、老年代以及年轻代垃圾回收次数、老年代垃圾回收次数、年轻代垃圾回收消耗时间、老年代垃圾回收消耗时间情况
基本使用语法:jstat -<options> PID <interval> <count>
<options>:表示jstat的选择项 PID:表示进程号 <interval>:表示整数型间隔时间(ms 或者m) 默认是毫秒级别 <count>:表示在间隔时间中打印次数
除此之外,可以用jstat -help 查看,还可使用jstat -options 查看,jstat 有哪些选择项
- [CBB@localhost ~]$ jstat -help
- Usage: jstat -help|-options
- jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
我们可以使用jps 来查询本地的进程号信息
jstat -options
- [CBB@localhost ~]$ jstat -options
- -class
- -compiler
- -gc
- -gccapacity
- -gccause
- -gcmetacapacity
- -gcnew
- -gcnewcapacity
- -gcold
- -gcoldcapacity
- -gcutil
- -printcompilation
- [root@localhost ~]# jstat -class 18750
- Loaded Bytes Unloaded Bytes Time
- 8859 16638.3 0 0.0 19.99
字段名称 | 表示含义 |
---|---|
Loaded | 加载class类的数量 |
Bytes | 所占内存空间 |
Unloaded | 未加载类的数量 |
Bytes | 未加载类内存空间 |
Time | 消耗时间 |
- [root@localhost ~]# jstat -compiler 18750
- Compiled Failed Invalid Time FailedType FailedMethod
- 4760 0 0 28.94 0
-
字段名称 | 表示含义 |
---|---|
Compiler | 编译成功数量 |
Failed | 编译失败数量 |
Invalid | 编译无效数量 |
Time | 编译耗时 |
FailedType | 编译失败的类型 |
FailedMethod | 编译失败的方法 |
- [root@localhost ~]# jstat -gc 18750
- S0C S1C S0U S1U EC EU OC OU MC MU CCSC CCSU YGC YGCT FGC FGCT GCT
- 26176.0 26176.0 17720.1 0.0 209792.0 115200.9 262144.0 24367.5 49880.0 47907.7 6188.0 5813.7 4 1.343 4 0.325 1.668
字段名称 | 表示含义 |
---|---|
S0C | 幸存区1容量(单位:字节) |
S1C | 幸存区2容量(单位:字节) |
S0U | 幸存区1使用容量(单位:字节) |
S1U | 幸存区2使用容量(单位:字节) |
EC | 伊甸园区容量(单位:字节) |
EU | 伊甸园区使用容量(单位:字节) |
OC | 老年区容量(单位:字节) |
OU | 老年区使用容量(单位:字节) |
MC | 方法区容量(单位:字节) |
MU | 方法区使用容量(单位:字节) |
CCSC | 压缩类空间容量(单位:字节) |
CCSU | 压缩类空间使用容量(单位:字节) |
YGC | 年轻代垃圾回收次数 |
YGCT | 年轻代垃圾回收消耗时间 |
FGC | 老年代垃圾回收次数 |
FGCT | 老年代垃圾回收消耗时间(单位:秒) |
GCT | 垃圾回收器总耗时时间(单位:秒) |
- [root@localhost ~]# jstat -gccapacity 18750
- NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC
- 262144.0 262144.0 262144.0 26176.0 26176.0 209792.0 262144.0 262144.0 262144.0 262144.0 0.0 1093632.0 49880.0 0.0 1048576.0 6188.0 4 4
字段名称 | 表示含义 |
---|---|
NGCMN | 年轻代gc最小容量(单位:字节) |
NGCMX | 年轻代gc最大容量(单位:字节) |
NGC | 当前年轻代容量(单位:字节) |
S0C | 幸存区0容量(单位:字节) |
S1C | 幸存区1容量(单位:字节) |
EC | 伊甸园容量(单位:字节) |
OGCMN | 老年代gc最小容量(单位:字节) |
OGCMX | 老年代gc最大容量(单位:字节) |
OGC | 当前老年代gc容量(单位:字节) |
OC | 当前老年代容量(单位:字节) |
MCMN | 元数据最小容量(单位:字节) |
MCMX | 元数据最大容量(单位:字节) |
MC | 当前元数据使用容量(单位:字节) |
CCSMN | 压缩类最小容量(单位:字节) |
CCSMX | 压缩类最大容量(单位:字节) |
CCSC | 当前压缩类容量(单位:字节) |
YGC | 从应用程序启动到现在,年轻代垃圾回收次数 |
FGC | 从应用程序启动到现在,老年代垃圾回收次数 |
- [root@localhost ~]# jstat -gccause 18750 1000
- S0 S1 E O M CCS YGC YGCT FGC FGCT GCT LGCC GCC
- 67.70 0.00 55.25 9.30 96.05 93.95 4 1.343 4 0.325 1.668 CMS Final Remark No GC
字段名称 | 表示含义 |
---|---|
S0 | 幸存区1使用百分比 |
S1 | 幸存区2使用百分比 |
E | 伊甸园区使用百分比 |
O | 老年代使用百分比 |
M | 元数据使用百分比 |
CCS | 压缩类使用百分比 |
YGC | 从应用程序启动到现在,年轻代垃圾回收次数 |
YGCT | 从应用程序启动到现在,年轻代垃圾回收消耗时间(单位:秒) |
FGC | 从应用程序启动到现在,老年代垃圾回收次数 |
FGCT | 从应用程序启动到现在,老年代垃圾回收消耗时间(单位:秒) |
GCT | 从应用程序启动到现在,垃圾回收器总消耗时间(单位:秒) |
LGCT | |
GCC |
- [root@localhost ~]# jstat -gcmetacapacity 18750 1000
- MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC FGCT GCT
- 0.0 1093632.0 49880.0 0.0 1048576.0 6188.0 4 4 0.325 1.668
-
字段名称 | 表示含义 |
---|---|
MCMN | 元数据最小容量(单位:字节) |
MCMX | 元数据最大容量(单位:字节) |
MC | 当前元数据容量大小(单位:字节) |
CCSMN | 压缩类最小空间容量(单位:字节) |
CCSMX | 压缩类最大空间容量(单位:字节) |
CCSC | 当前压缩类容量大小(单位:字节) |
YGC | 从应用程序启动到现在,年轻代垃圾回收次数 |
FGC | 从应用程序启动到现在,老年代垃圾回收次数 |
FGCT | 从应用程序启动到现在,老年代垃圾回收消耗时间(单位:秒) |
GCT | 从应用程序启动到现在,垃圾回收总消耗时间(单位:秒) |
- [root@localhost ~]# jstat -gcnew 18750
- S0C S1C S0U S1U TT MTT DSS EC EU YGC YGCT
- 26176.0 26176.0 17720.1 0.0 6 6 13088.0 209792.0 115900.6 4 1.343
-
字段名称 | 表示含义 |
---|---|
S0C | 幸存区1容量(单位:字节) |
S1C | 幸存区2容量(单位:字节) |
S0U | 幸存区1使用容量(单位:字节) |
S1U | 幸存区2使用容量(单位:字节) |
TT | 对象在年轻代存活的次数 |
MTT | 对象在年轻代存货的最大次数 |
DSS | 指望的幸存区容量(单位:字节) |
EC | 伊甸园容量(单位:字节) |
EU | 伊甸园使用容量(单位:字节) |
YGC | 从应用程序启动到现在,年轻代垃圾回收次数 |
YGCT | 从应用程序启动到现在,年轻代垃圾回收消耗时间(单位:秒) |
- [root@localhost ~]# jstat -gcnewcapacity 18750
- NGCMN NGCMX NGC S0CMX S0C S1CMX S1C ECMX EC YGC FGC
- 262144.0 262144.0 262144.0 26176.0 26176.0 26176.0 26176.0 209792.0 209792.0 4 4
字段名称 | 表示含义 |
---|---|
NGCMN | 年轻代最小容量(单位:字节) |
NGCMX | 年轻代最大容量(单位:字节) |
NGC | 当前年轻代容量大小(单位:字节) |
S0CMX | 幸存区1最大容量(单位:字节) |
S1CMX | 幸存区2最大容量(单位:字节) |
S1C | 当前幸存区2容量大小(单位:字节) |
ECMX | 伊甸园最大的容量(单位:字节) |
EC | 当前伊甸园容量(单位:字节) |
YGC | 从应用程序启动到现在,年轻代垃圾回收次数 |
FGC | 从应用程序启动到现在,老年代垃圾回收次数 |
- [root@localhost ~]# jstat -gcold 18750
- MC MU CCSC CCSU OC OU YGC FGC FGCT GCT
- 49880.0 47907.7 6188.0 5813.7 262144.0 24367.5 4 4 0.325 1.668
字段名称 | 表示含义 |
---|---|
MC | 方法区空间容量(单位:字节) |
MU | 方法区使用容量(单位:字节) |
CCSC | 压缩类空间容量(单位:字节) |
CCSU | 压缩类空间使用容量(单位:字节) |
OC | 老年代空间容量(单位:字节) |
OU | 老年代使用容量(单位:字节) |
YGC | 从应用程序启动到现在,年轻代垃圾回收次数 |
FGC | 从应用程序启动到现在,老年代垃圾回收次数 |
FGCT | 从应用程序启动到现在,老年代垃圾回收消耗时间(单位:秒) |
GCT | 从应用程序启动到现在,垃圾回收器总消耗时间(单位:秒) |
- [root@localhost ~]# jstat -gcoldcapacity 18750
- OGCMN OGCMX OGC OC YGC FGC FGCT GCT
- 262144.0 262144.0 262144.0 262144.0 4 4 0.325 1.668
字段名称 | 表示含义 |
---|---|
OGCMN | 老年代垃圾回收最小容量(单位:字节) |
OGCMX | 老年代垃圾回收最大容量(单位:字节) |
OGC | 当前老年代空间容量(单位:字节) |
OC | 老年代容量(单位:字节) |
YGC | 从应用程序启动到现在,年轻代垃圾回收次数 |
FGC | 从应用程序启动到现在,老年代垃圾回收次数 |
FCGT | 从应用程序启动到现在,老年代垃圾回收消耗时间(单位:秒) |
GCT | 从应用程序启动到现在,垃圾回收器总消耗时间(单位:秒) |
- [root@localhost ~]# jstat -gcutil 18750 1000
- S0 S1 E O M CCS YGC YGCT FGC FGCT GCT
- 67.70 0.00 55.58 9.30 96.05 93.95 4 1.343 4 0.325 1.668
- 67.70 0.00 55.58 9.30 96.05 93.95 4 1.343 4 0.325 1.668
- 67.70 0.00 55.58 9.30 96.05 93.95 4 1.343 4 0.325 1.668
字段名称 | 表示含义 |
---|---|
S0 | 幸存区1使用百分比 |
S1 | 幸存区2使用百分比 |
E | 伊甸园使用百分比 |
O | 老年区使用百分比 |
M | 元数据使用百分比 |
CCS | 压缩类使用百分比 |
YGC | 年轻代垃圾回收次数 |
YGCT | 从应用程序启动到现在,年轻代gc消耗时间(单位:秒) |
FGC | 从应用程序启动到现在,老年代垃圾回收次数 |
FGCT | 从应用程序启动到现在,老年代垃圾回收消耗时间(单位:秒) |
GCT | 从应用程序启动到现在,垃圾回收器总消耗时间(单位:秒) |
- [root@localhost ~]# jstat -printcompilation 18750
- Compiled Size Type Method
- 4821 160 1 java/util/BitSet nextSetBit
字段名称 | 表示含义 |
---|---|
Compiled | 最近方法编译的数量 |
Size | 最近方法编译字节码的数量 |
Type | 最近方法编译类型 |
Method | 方法名标识 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。