JDK自带的故障处理工具

本文记录了JDK自带的几个Java处理工具,包括jps、jstat、jinfo、jmap、jhat、jstack和HSDIS。介绍了各工具的功能,如jps可列出运行的虚拟机进程,jstat能监视虚拟机运行状态信息等,还给出了部分工具的命令及相关使用说明链接。

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

前言:

用来记录jdk自带的几个处理工具,知道有这几个东西,等有需要的时候再去具体学习使用。

1、jps 虚拟机进程状况工具

功能:

可以列出正在运行的虚拟机进程,并显示虚拟机执行Main类名称及这些进程的本地虚拟机唯一ID(LVMID)。

命令:

jps [options ] [ hostid ] 

jps -q:只输出LVMID,省略主类的名称

jps-m:输出虚拟机进程启动时传递给主类的参数

jps-l:输出主类的全名,如果进程时Jar,则输出其路径

jps-v:输出虚拟机进程启动时的JVM参数。

2、jstat 虚拟机统计信息监视工具

功能:

监视虚拟机各种运行状态信息的命令行工具,主要用来定位虚拟机性能的工具。它可以显示本地或者远程虚拟机进程中的类加载、内存、垃圾收集、JIT编译等运行数据。

命令:

可以使用 jstat -help 来查看命令参数

  • option: 参数选项
  • -t: 可以在打印的列加上Timestamp列,用于显示系统运行的时间
  • -h: 可以在周期性数据数据的时候,可以在指定输出多少行以后输出一次表头
  • vmid: Virtual Machine ID( 进程的 pid)
  • interval: 执行每次的间隔时间,单位为毫秒
  • count: 用于指定输出多少次记录,缺省则会一直打印

 

option 可以从下面参数中选择

  • -class 显示ClassLoad的相关信息;
  • -compiler 显示JIT编译的相关信息;
  • -gc 显示和gc相关的堆信息;
  • -gccapacity    显示各个代的容量以及使用情况;
  • -gcmetacapacity 显示metaspace的大小
  • -gcnew 显示新生代信息;
  • -gcnewcapacity 显示新生代大小和使用情况;
  • -gcold 显示老年代和永久代的信息;
  • -gcoldcapacity 显示老年代的大小;
  • -gcutil   显示垃圾收集信息;
  • -gccause 显示垃圾回收的相关信息(通-gcutil),同时显示最后一次或当前正在发生的垃圾回收的诱因;
  • -printcompilation 输出JIT编译的方法信息;

 

各个区间的命令使用及相关的参数意思:

https://www.cnblogs.com/yjd_hycf_space/p/7755633.html

3、jinfo Java配置信息工具

功能:

实时查看和调整虚拟机各项参数。

命令:

https://www.jianshu.com/p/8d8aef212b25

4、jmap Java内存映像工具

功能:

生成堆转储快照。

命令:

https://www.jianshu.com/p/a4ad53179df3

5、jhat 虚拟机堆转储快照分析工具(JDK9被删除了)

功能:

与 jmap 命令一起使用,来分析 jmap 生成的堆转储快照。

命令:

https://www.cnblogs.com/flydean/p/jdk14-jmap-jhat.html

6、jstack 堆栈跟踪工具

功能:

生成虚拟机当前时刻的线程快照。IDEA 也提供该功能,如下图所示:

 

命令:

https://www.cnblogs.com/kongzhongqijing/articles/3630264.html

 

7、HSDIS JIT生成代码反汇编

功能:

分析程序如何执行。

安装:

https://www.jianshu.com/p/125f0ecf385f

使用:

https://www.jianshu.com/p/78f71c033fae

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值