jstat(JVM Statistics Monitoring Tool)

时间:2022-06-28 18:53:46
功能
 
用于监视虚拟机各种运行状态信息的命令行工具。它可以显示本地或远程虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据,在没有GUI图形界面,只提供了纯文本控制台环境的服务器上,它将是运行期定位虚拟机性能问题的首选工具。
 
示例
 
jstat(JVM Statistics Monitoring Tool)
 jstat(JVM Statistics Monitoring Tool)
说明
 
参数interval和count代表查询间隔和次数,如果省略这两个参数,说明只查询一次,主要选项如下:
 
-class:监视类装载、卸载数量、总空间及类装载所耗费的时间
 
-gc:监视Java堆状况,包括Eden区、2个survivor区、老年代、永久代等的容量、已用空间、GC时间合计等信息
 
-gccapacity:监视内容与-gc基本相同,但输出主要关注Java堆各个区域使用到的最大和最小空间
 
-gcutil:监视内容与-gc基本相同,但输出主要关注已使用空间占总空间的百分比
 
-gccause:与-gcutil功能一样,但是会额外输出导致上一次GC产生的原因
 
-gcnew:监视新生代GC的状况
 
-gcnewcapacity:监视内容与-gcnew基本相同,输出主要关注使用到的最大和最小空间
 
-gcold:监视老年代GC的情况
 
-gcoldcapacity:监视内容与-gcold基本相同,输出主要注意使用到的最大和最小空间
 
-gcpermcapacity:输出永久代使用到的最大和最小空间
 
-compiler:输出JIT编译器编译过的方法、耗时等信息
 
-printcompilation:输出已经被JIT编译的方法
 
以-gcutil为例说明查询结果含义:
 jstat(JVM Statistics Monitoring Tool)
jstat(JVM Statistics Monitoring Tool)
 
S0、S1:两个Survivor区,分别表示Survivor0、Survivor1
 
E:新生代Eden区
 
O:老年代Old区
 
P:永久代Permanent区
 
YGC:Minor GC次数
 
YGCT:Minor GC总耗时(秒)
 
FGC:Full GC次数
 
FGCT:Full GC总耗时(秒)
 
GCT:所有GC总耗时(秒)