jvm监控工具之jstat篇
1.jstat用于输出指定 java 进程的统计信息
用法:
Jstat : jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
其中的<option>为必须提供的选项,所有的可用选项可使用jstat -options列出
2.常用选项(附带每个选项的输出列名介绍)
class:统计classloader的行为
compiler:统计hotspot just-in-time编译器的行为
gc:统计gc行为
gccapacity:统计堆中代的容量、空间
gccause:垃圾收集统计,包括最近引用垃圾收集的事件,基本同gcutil,比gcutil多了两列
gcnew:统计新生代的行为
gcnewcapacity:统计新生代的大小和空间
gcold:统计旧生代的行为
gcoldcapacity:统计旧生代的大小和空间
gcpermcapacity:统计永久代的大小和空间
gcutil:垃圾收集统计
printcompilation:hotspot编译方法统计
-h n 每n个样本,显示header一次
-t n 在第一列显示时间戳列,时间戳时从jvm启动开始计算
<vmid> 就是进程号
<interval> interval是监控时间间隔,单位为微妙,不提供就意味着单次输出
<count> count是最大输出次数,不提供且监控时间间隔有值的话, 就无限打印
3.具体参数使用介绍
1.class选项:
#jstat -class 4214 2000 10 (每隔2秒监控一次,一共做10次)
2.选项-compiler
3.GC选项:
列名介绍:
4.gccapacity选项:
每隔两秒统计一次新生代,一共统计5次
5.gccause参数:
列名介绍:
6.gcnew选项:
7.gcoldcapacity选项
列名介绍:
8.gcutil
列名介绍:
9.printcompilation
编译统计的方法
列名介绍:
4.详细堆栈内存空间使用状态信息查看分析
jmap -heap 4214
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 我与微信审核的“相爱相杀”看个人小程序副业
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求