jstat 命令

一、概述

jstat(JVM Statistics Monitoring Tool) 是用于监视虚拟机各种运行状态信息的命令行工具

jstat 命令格式

jstat  [option  pid  [interval]  [count]  ]

1
2
// 每隔 1000ms 采样一次查看 10086 进程的垃圾收集状况,总共采样 10 次,如果 interval 和 count 这两个参数省略则代表只采样一次
jstat -gcutil 10086 1000 10

常用的 jstat 选项

选项 作用
-class 监视类的卸载、卸载数量、总空间、类加载所耗费的时间
-gc 监视 Java 堆状况,包括 Eden、S0、S1、Old、方法区(jdk 8 之前是永久代,jdk 8 及以后为元空间)等的容量、已用空间;垃圾收集相关信息
-gccapacity 监视内容与 -gc 相同,但输出主要关注各个内存区域用到的最大、最小空间
-gcutil 监视内容与 -gc 相同,但输出主要关注已使用空间占总空间的百分比
-gccause 与 -gcutil 功能相同,但是会额外输出导致上一次垃圾收集产生的原因
-gcnew 监视新生代垃圾收集状况
-gcnewcapacitdy 监视内容与 -gcnew 基本相同,但输出主要关注使用到的最大、最小空间
-gcold 监视老年代垃圾收集状况
-gcoldcapacity 监视内容与 -gcold 基本相同,但输出主要关注使用到的最大、最小空间
-gcpermcapacity 输出永久代使用到的最大、最小空间
-compile 输出即时编译器编译过的方法、耗时等信息
-printcompilation 输出已经被即时编译的方法

 

二、示例

1
2
S0      S1     E      O     P   YGC     YGCT     FGC    FGCT     GCT
23.13   0.00  75.98   7.33   �   4182   46.231     2    0.209   46.440

上述采样结果显示:

S0: S0 区使用了 23.13% 的空间

S1: S1 区暂未使用

E: Eden 区使用了 75.98%

O: Old 区使用了 7.33%

P: 当前 JDK 版本是 1.8,没有永久代,所以这里以 ? 作为占位符进行占位

YGC: 发生了 Young GC 4182 次

YGCT: Yount GC 总共花费 46.231 s

FGC: 发生了 2 次 Full GC

FGCT: Full GC 总共花费 0.209 s

GCT: Young GC + Full GC 总共花费的时间为 46.440 s

 

posted @   变体精灵  阅读(180)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示