说明
jstat (Java Virtual Machine (JVM) statistics) 是用来监控JVM的工具
概要
使用: jstat [ generalOption | outputOptions vmid [ interval[s|ms] [ count ] ]
- generalOption 表示一个整体命令(-class,-gc,-gcold等),表示要监控的是什么数据(-class收集类加载器信息,-gc收集垃圾回收相关信息), 可使用的命令列表可使用 
jstat -options进程查看 - outputOptions 输出信息选项,目前支持:
    
- -t:显示JVM时间戳,表示的是JVM启动后运行的时间,单位是秒
 - -h:设置每多少次信息输出之后,就再输出一次每一列的列名
 - -J:用来设置java参数的,例如 -J-Xms48m 表示设置启动内存为48M
 
 - vmid 虚拟机地址,如果在本机的话,就是 JVM 进程id,远端则使用 
[protocol:][//]lvmid[@hostname[:port]/servername]进行连接 - 
    
interval[s ms] 表示统计间隔时间,不加单位默认ms  - count 统计次数
 
interval 和 count 都不加,则只统计一次,加 interval,不加 count,则无限次统计
例子
以下例子都是使用 30443 这个进程
-class
类加载统计

- Loaded:加载的类个数
 - Bytes:占用的字节数(KBs)
 - Unloaded: 卸载的类个数
 - Bytes: 卸载的类的字节数(KBs)
 - times: 执行加载类和卸载类所花费的时间
 
-compiler
HotSpot虚拟机JIT(just-in-time)编译统计

- Compiled: 执行的编译任务数
 - Failed: 执行失败的编译任务数
 - Invalid: 已失效的编译任务数
 - FailedType: 最后一次失败的编译任务类型
 - FailedMethod: 最后一次编译失败的类名和方法名
 
-gc
垃圾收集堆信息统计,以下大小单位都是KB

- S0C: 0号survivor区大小
 - S1C: 1号survivor区大小
 - S0U: 0号survivor区已使用空间大小
 - S1U: 1号survivor区已使用空间大小
 - EC: eden区域大小
 - EU: eden区域已使用空间大小
 - OC: old老年代区域空间大小
 - OU: old老年代区域已使用空间大小
 - MC: Metaspace元数据空间大小
 - MU: Metaspace元数据已使用空间大小
 - CCSC(Compressed class space capacity): 压缩类空间的大小
 - CCSU: 压缩类空间已使用的大小
 - YGC: young GC 发生次数
 - YGCT: young GC 所花费的总时间
 - FGC: full GC 发生次数
 - FGCT: full GC 所花费的总时间
 - GCT: GC所花费的总时间
 
-gccapacity
内存池各个代(新生代,老年代)空间大小统计信息,单位kB

- NGCMN: 新生代空间最小值.
 - NGCMX: 新生代空间最大值 .
 - NGC: 当前新生代大小 .
 - S0C: 当前0号Surviver区大小.
 - S1C: 当前1号Surviver区大小.
 - EC: 当前Eden区域大小
 - OGCMN: 老年代空间最小值
 - OGCMX: 老年代空间最大值
 - OGC: 当前老年代大小
 - OC: 当前老年代大小
 - MCMN: metaspace元数据空间最小值
 - MCMX: metaspace元数据空间最大值
 - MC: Metaspace元数据空间当前大小
 - CCSMN: 压缩类空间的最小值
 - CCSMX: 压缩类空间的最大值
 - CCSC: 压缩类空间的当前大小
 - YGC: young GC 发生次数
 - FGC: full GC 发生次数
 
-gcutil
垃圾收集统计信息摘要

- S0: 0号Survivor当前已使用的百分比
 - S1: 1号Survivor当前已使用的百分比
 - E: Eden区域使用百分比
 - O: 老年代使用百分比
 - M: Metaspace元数据使用百分比
 - CCS: 压缩类使用空间百分比
 - YGC: young GC 发生次数
 - YGCT: young GC 所花费的时间
 - FGC: full GC 发生次数
 - FGCT: Full gc 所花费的时间
 - GCT: GC的总时间
 
其他选项的使用
可参考 man jstat 的说明.
