当前位置: 代码迷 >> 综合 >> JVM jstat
  详细解决方案

JVM jstat

热度:88   发布时间:2023-10-22 00:28:57.0

1.介绍

Jstat用于监控基于HotSpot的JVM,对其堆的使用情况进行实时的命令行的统计,使用jstat我们可以对指定的JVM做如下监控:

  • 类的加载及卸载情况
  • 查看新生代、老生代及metaSpace的容量及使用情况
  • 查看新生代、老生代及metaSpace的垃圾收集情况,包括垃圾回收的次数及垃圾回收所占用的时间
  • 查看新生代中Eden区及Survior区中容量及分配情况等

    jstat工具特别强大,它有众多的可选项,通过提供多种不同的监控维度,使我们可以从不同的维度来了解到当前JVM堆的使用情况。详细查看堆内各个部分的使用量,使用的时候必须加上待统计的Java进程号,可选的不同维度参数以及可选的统计频率参数。

2.语法

JVM jstat

下面是jdk1.8支持的选项: 
JVM jstat

下面是jdk1.8以下版本支持的选项:

JVM jstat

3示例

jstat  -gc -h5  -t 26316 1s 20
  • 1
  • 2

JVM jstat

-gc 选项 
-h5 每隔5行显示一下表头 
-t 显示从虚拟机启动在当前时间的时间间隔 单位:秒 
26536 线程id 
1s 1秒显示一次 
20 总共显示20次

4表头讲解

实名jdk1.7与jdk1.8就差了一个metaspace区域,其它都一样。

表头 描述 jdk 版本
S0C 新生代中Survivor space中S0当前容量的大小(KB)  
S1C 新生代中Survivor space中S1当前容量的大小(KB)  
S0U 新生代中Survivor space中S0容量使用的大小(KB)  
S1U 新生代中Survivor space中S1容量使用的大小(KB)  
EC Eden space当前容量的大小(KB)  
EU Eden space容量使用的大小(KB)  
OC Old space当前容量的大小(KB)  
OU Old space使用容量的大小(KB)  
PC Permanent space当前容量的大小(KB) 1.8以下
PU Permanent space使用容量的大小(KB) 1.8以下
MC MeteSpace 当前容量的大小(KB) 1.8及以上
MU MeteSpace 使用容量的大小(KB) 1.8及以上
CCSC 压缩类空间大小(KB) 1.8及以上
CCSU 压缩类空间大小(KB) 1.8及以上
YGC 从应用程序启动到采样时发生 Young GC 的次数  
YGCT 从应用程序启动到采样时 Young GC 所用的时间(秒)  
FGC 从应用程序启动到采样时发生 Full GC 的次数  
FGCT 从应用程序启动到采样时 Full GC 所用的时间(秒)  
GCT 从jvm启动到采样时用于垃圾回收的总时间(单位秒),它的值等于YGC+FGC