《深入理解Java虚拟机》Java虚拟机的监控及诊断工具相关命令行

本文介绍了Java虚拟机的几个重要诊断工具,如jps用于查看Java进程,jstat提供性能数据包括GC详情,jmap生成堆内存快照,jinfo显示VM参数,jstack则用于分析线程堆栈轨迹,帮助开发者进行故障排查和性能优化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

《深入理解Java虚拟机》Java虚拟机的监控及诊断工具相关命令行

1.jps

查看当前系统正在运行的java进程

image-20230523203024525

相关参数

-l 打印模块名以及包名

image-20230523203104512

-v 打印虚拟机相关参数

image-20230523203141114

-m 打印传给主类的参数

image-20230523203258037

-mlv 以上内容都打印

2.jstat

打印目标 Java 进程的性能数据

-gc 打印gc回收相关信息

image-20230523203507062

字段名称 表示含义
S0C 幸存区1容量(单位:字节)
S1C 幸存区2容量(单位:字节)
S0U 幸存区1使用容量(单位:字节)
S1U 幸存区2使用容量(单位:字节)
EC 伊甸园区容量(单位:字节)
EU 伊甸园区使用容量(单位:字节)
OC 老年区容量(单位:字节)
OU 老年区使用容量(单位:字节)
MC 方法区容量(单位:字节)
MU 方法区使用容量(单位:字节)
CCSC 压缩类空间容量(单位:字节)
CCSU 压缩类空间使用容量(单位:字节)
YGC 年轻代垃圾回收次数
YGCT 年轻代垃圾回收消耗时间
FGC 老年代垃圾回收次数
FGCT 老年代垃圾回收消耗时间(单位:秒)
GCT 垃圾回收器总耗时时间(单位:秒)

3.jmap

用于打印堆中堆快照信息,将会导致一定时间的stw

-clstats,该子命令将打印被加载类的信息。

-finalizerinfo,该子命令将打印所有待 finalize 的对象。

-histo,该子命令将统计各个类的实例数目以及占用内存,并按照内存使用量从多至少的顺序排列。此外,

-histo:live只统计堆中的存活对象。-dump,该子命令将导出 Java 虚拟机堆的快照。同样,-dump:live只保存堆中的存活对象。

image-20230523204338025

4.jinfo

打印虚拟机参数信息

5.jstack

打印java进程中线程的栈轨迹,同时能检测到死锁

image-20230523205202544

image-20230523205253726

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋日的晚霞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值