【JVM】jstat命令详解---JVM的统计监测工具

2021/7/5 6:21:43

本文主要是介绍【JVM】jstat命令详解---JVM的统计监测工具,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

copy于https://www.cnblogs.com/sxdcgaq8080/p/11089841.html

有修改调整

===========================================================

1.jstat命令简介

  jstat命令可以查看堆内存各部分的使用量,以及加载类的数量。

  命令的格式如下:

    jstat [-命令选项] [pid] [间隔时间(s)/毫秒] [查询次数]

    例如:

    jstat -gc 8084 500 2

    jstat -gc 8084 1s 2

 

2.使用详情列表

 【以下的统计空间单位,未标明的  都是KB】

 

1>类加载统计

命令:

jstat -class 19570

结果:

解析:

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

 

 

2>编译统计

 命令:

jstat -compiler 19570

 

结果:

解析:

Compiled:编译数量。
Failed:失败数量
Invalid:不可用数量
Time:时间
FailedType:失败类型
FailedMethod:失败的方法

 

 

3>垃圾回收统计

命令:

jstat -gc 19570

结果:

解析:

复制代码
S0C:第一个幸存区的大小
S1C:第二个幸存区的大小
S0U:第一个幸存区的使用大小
S1U:第二个幸存区的使用大小
EC:伊甸园区的大小
EU:伊甸园区的使用大小
OC:老年代大小
OU:老年代使用大小
MC:方法区大小
MU:方法区使用大小
CCSC:压缩类空间大小
CCSU:压缩类空间使用大小
YGC:年轻代垃圾回收次数
YGCT:年轻代垃圾回收消耗时间
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间

 

复制代码

 

4>堆内存统计

 命令:

jstat -gccapacity 19570

 

结果:

解析:

复制代码
NGCMN:新生代最小容量
NGCMX:新生代最大容量
NGC:当前新生代容量
S0C:第一个幸存区大小
S1C:第二个幸存区的大小
EC:伊甸园区的大小
OGCMN:老年代最小容量
OGCMX:老年代最大容量
OGC:当前老年代大小
OC:当前老年代大小
MCMN:最小元数据容量
MCMX:最大元数据容量
MC:当前元数据空间大小
CCSMN:最小压缩类空间大小
CCSMX:最大压缩类空间大小
CCSC:当前压缩类空间大小
YGC:年轻代gc次数
FGC:老年代GC次数
复制代码

 

5>新生代垃圾回收统计

 命令:

jstat -gcnew 19570

 

结果:

解析:

复制代码
S0C:第一个幸存区大小
S1C:第二个幸存区的大小
S0U:第一个幸存区的使用大小
S1U:第二个幸存区的使用大小
TT:对象在新生代存活的次数
MTT:对象在新生代存活的最大次数
DSS:期望的幸存区大小
EC:伊甸园区的大小
EU:伊甸园区的使用大小
YGC:年轻代垃圾回收次数
YGCT:年轻代垃圾回收消耗时间
复制代码

 

 

6>新生代内存统计

 命令:

jstat -gcnewcapacity 19570

 

结果:

解析:

复制代码
NGCMN:新生代最小容量
NGCMX:新生代最大容量
NGC:当前新生代容量
S0CMX:最大幸存1区大小
S0C:当前幸存1区大小
S1CMX:最大幸存2区大小
S1C:当前幸存2区大小
ECMX:最大伊甸园区大小
EC:当前伊甸园区大小
YGC:年轻代垃圾回收次数
FGC:老年代回收次数
复制代码

 

7>老年代垃圾回收统计

 命令:

jstat -gcold 19570

 

结果:

解析:

复制代码
MC:方法区大小
MU:方法区使用大小
CCSC:压缩类空间大小
CCSU:压缩类空间使用大小
OC:老年代大小
OU:老年代使用大小
YGC:年轻代垃圾回收次数
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间
复制代码

 

 

8>老年代内存统计

 命令:

 

jstat -gcoldcapacity 19570

 

结果:

 

解析:

 

复制代码
OGCMN:老年代最小容量
OGCMX:老年代最大容量
OGC:当前老年代大小
OC:老年代大小
YGC:年轻代垃圾回收次数
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间
复制代码

 

9>JDK7 下 永久代空间统计

 命令:

jstat -gcpermcapacity 19570

 

结果:

 

解析:

 

复制代码
PGCMN:最小永久代容量
PGCMX:最大永久代容量
PGC:当前新生成的永久代空间大小
PC :永久代空间大小
YGC:年轻代垃圾回收次数
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间
复制代码

 

 

10>JDK8 下 元数据空间统计

 命令:

jstat -gcmetacapacity 7172

结果:

 MCMN       MCMX        MC       CCSMN      CCSMX       CCSC     YGC   FGC    FGCT     GCT
   0.0    33152.0    33152.0        0.0        0.0        0.0    12     0    0.000    0.736

解析:

 

复制代码
MCMN:最小元数据容量
MCMX:最大元数据容量
MC:当前元数据空间大小
CCSMN:最小压缩类空间大小
CCSMX:最大压缩类空间大小
CCSC:当前压缩类空间大小
YGC:年轻代垃圾回收次数
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间
复制代码

 

11>总结垃圾回收统计

 命令:

 

jstat -gcutil 19570

 

结果:

 

解析:

 

复制代码
S0:幸存1区当前使用比例
S1:幸存2区当前使用比例
E:伊甸园区使用比例
O:老年代使用比例
M:元数据区使用比例
CCS:压缩使用比例
YGC:年轻代垃圾回收次数
FGC:老年代垃圾回收次数
FGCT:老年代垃圾回收消耗时间
GCT:垃圾回收消耗总时间
复制代码

 

12>JVM编译方法统计

 

 命令:

jstat -printcompilation 19570

 

结果:

 

解析:

Compiled:最近编译方法的数量
Size:最近编译方法的字节码数量
Type:最近编译方法的编译类型。
Method:方法名标识。


这篇关于【JVM】jstat命令详解---JVM的统计监测工具的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程