JVM 故障诊断常用工具之 jstat

该工具可以查看JVM加载的类的数量、堆内存各部分的使用量以及垃圾回收统计,命令格式如下所示

jstat <-选项> <进程ID> <间隔时间/毫秒> <查询次数>

类加载统计:jstat -class <pid>

Loaded加载class的数量
Bytes加载的class所占用空间大小
Unloaded未加载class的数量
Bytes未加载的class所占用空间大小
Time

加载class累计耗时

垃圾回收统计:jstat -gc <pid>

S0C第一个幸存区容量(单位KB)
S1C第二个幸存区容量(单位KB)
S0U第一个幸存区已使用的大小(单位KB)
S1U第二个幸存区已使用的大小(单位KB)
ECEden区容量(单位KB)
EUEden区已使用的大小(单位KB)
OC老年代容量(单位KB)
OU老年代已使用的大小(单位KB)
MC元空间容量(单位KB)
MU元空间已使用的大小(单位KB)
CCSC压缩类空间容量(单位KB)
CCSU压缩类空间已使用的大小(单位KB)
YGCMinor GC累计次数
YGCTMinor GC累计耗时
FGCFull GC累计次数
FGCTFull GC累计耗时
GCTGC累计总耗时(包括MinorGC、Full GC)

堆内存统计:jstat -gccapacity <pid>

NGCMN新生代最小容量(单位KB)
NGCMX新生代最大容量(单位KB)
NGC当前新生代大小(单位KB)
S0C第一个幸存区大小(单位KB)
S1C第二个幸存区大小(单位KB)
ECEden区大小(单位KB)
OGCMN老年代最小容量(单位KB)
OGCMX老年代最大容量(单位KB)
OGC当前老年代大小(单位KB)
OC当前老年代大小(单位KB)
MCMN元空间最小容量(单位KB)
MCMX元空间最大容量(单位KB)
MC当前元空间大小(单位KB)
CCSMN压缩类空间最小容量(单位KB)
CCSMX压缩类空间最大容量(单位KB)
CCSC当前压缩类空间大小(单位KB)
YGCMinor GC累计次数
FGCFull GC累计次数

新生代垃圾回收统计:jstat -gcnew <pid>

S0C第一个幸存区容量(单位KB)
S1C第二个幸存区容量(单位KB)
S0U第一个幸存区已使用大小(单位KB)
S1U第二个幸存区已使用大小(单位KB)
TT

对象在新生代存活的次数(单位KB)

MTT对象在新生代存活的最大次数(单位KB)
DSS

期望的幸存区大小(单位KB)

ECEden区容量(单位KB)
EUEden区已使用大小(单位KB)
YGC

Minor GC累计次数

YGCTMinor GC累计耗时

新生代内存统计:jstat -gcnewcapacity <pid>

NGCMN新生代最小容量(单位KB)
NGCMX新生代最大容量(单位KB)
NGC当前新生代大小(单位KB)
S0CMX第一个幸存区最大容量(单位KB)
S0C当前第一个幸存区大小(单位KB)
S1CMX第二个幸存区最大容量(单位KB)
S1C第二个幸存区大小(单位KB)
ECMXEden区最大容量(单位KB)
EC当前Eden大小(单位KB)
YGCMinor GC累计次数
FGCFull GC累计次数

老年代垃圾回收统计:jstat -gcold <pid>

MC元空间大小(单位KB)
MC元空间已使用大小(单位KB)
CCSC压缩类空间大小(单位KB)
CCSU压缩类空间已使用大小(单位KB)
OC老年代大小(单位KB)
OU

老年代已使用大小(单位KB)

YGCMinor GC累计次数
FGCFull GC累计次数
FGCTFull GC累计耗时
GCTGC累计总耗时(包括MinorGC、Full GC)

老年代内存统计:jstat -gcoldcapacity <pid>

OGCMN老年代最小容量(单位KB)
OGCMX老年代最大容量(单位KB)
OGC当前老年代大小(单位KB)
OC当前老年代大小(单位KB)
YGCMinor GC累计次数
FGCFull GC累计次数
FGCTFull GC累计耗时
GCTGC累计总耗时(包括MinorGC、Full GC)

元空间内存统计:jstat -gcmetacapacity <pid>

MCMN元空间最小容量(单位KB)
MCMX元空间最大容量(单位KB)
MC当前元空间大小(单位KB)
CCSMN压缩类空间最小容量(单位KB)
CCSMX压缩类空间最大容量(单位KB)
CCSC当前类压缩空间大小(单位KB)
YGCMinor GC累计次数
FGCFull GC累计次数
FGCTFull GC累计耗时
GCTGC累计总耗时(包括MinorGC、Full GC)

整体垃圾回收统计:jstat -gcutil <pid>

S0第一个幸存区已使用占比(%)
S1第二个幸存区已使用占比(%)
EEden区已使用占比(%)
O老年代已使用占比(%)
M元空间已使用占比(%)
CCS压缩类空间已使用占比(%)
YGCMinor GC累计次数
YGCTMinor GC累计耗时
FGCFull GC累计次数
FGCTFull GC累计耗时
GCTGC累计总耗时(包括MinorGC、Full GC)

参考文章

jstat命令使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值