这篇具有很好参考价值的文章主要介绍了JVM工具之jstat。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。
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基本使用语法
基本使用语法: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
jstat -class 加载类统计
[root@localhost ~]# jstat -class 18750
Loaded Bytes Unloaded Bytes Time
8859 16638.3 0 0.0 19.99
字段名称 |
表示含义 |
Loaded |
加载class类的数量 |
Bytes |
所占内存空间 |
Unloaded |
未加载类的数量 |
Bytes |
未加载类内存空间 |
Time |
消耗时间 |
jstat -compiler 编译统计
[root@localhost ~]# jstat -compiler 18750
Compiled Failed Invalid Time FailedType FailedMethod
4760 0 0 28.94 0
字段名称 |
表示含义 |
Compiler |
编译成功数量 |
Failed |
编译失败数量 |
Invalid |
编译无效数量 |
Time |
编译耗时 |
FailedType |
编译失败的类型 |
FailedMethod |
编译失败的方法 |
jstat -gc 垃圾回收统计
[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 |
垃圾回收器总耗时时间(单位:秒) |
jstat -gccapacity 垃圾回收器内存空间统计
[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 |
从应用程序启动到现在,老年代垃圾回收次数 |
jstat -gccause 垃圾回收器分析统计
[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 |
|
jstat -gcmetacapacity 元数据内存空间统计
[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 |
从应用程序启动到现在,垃圾回收总消耗时间(单位:秒) |
jstat -gcnew 新生代垃圾回收统计
[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 |
从应用程序启动到现在,年轻代垃圾回收消耗时间(单位:秒) |
jstat -gcnewcapacity 新生代内存空间统计
[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 |
从应用程序启动到现在,老年代垃圾回收次数 |
jstat -gcold 老年代垃圾回收统计
[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 |
从应用程序启动到现在,垃圾回收器总消耗时间(单位:秒) |
jstat -gcoldcapacity 老年代内存空间统计
[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 |
从应用程序启动到现在,垃圾回收器总消耗时间(单位:秒) |
jstat -gcutil 总垃圾回收统计
文章来源:https://www.toymoban.com/news/detail-443555.html
[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 |
从应用程序启动到现在,垃圾回收器总消耗时间(单位:秒) |
jstat -printcompilation JVM编译方法统计
文章来源地址https://www.toymoban.com/news/detail-443555.html
[root@localhost ~]# jstat -printcompilation 18750
Compiled Size Type Method
4821 160 1 java/util/BitSet nextSetBit
字段名称 |
表示含义 |
Compiled |
最近方法编译的数量 |
Size |
最近方法编译字节码的数量 |
Type |
最近方法编译类型 |
Method |
方法名标识 |
到了这里,关于JVM工具之jstat的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!