JVM学习(五)——JDK 命令行工具和可视化工具

一、JDK命令行工具

这些命令在 JDK 安装目录下的 bin 目录下:

1、jps(查看所有 Java 进程)

类似 UNIX 的 ps 命令。用户查看所有 Java 进程的启动类、传入参数和 Java 虚拟机参数等信息;

命令说明
jps显示虚拟机执行主类名称以及这些进程的本地虚拟机唯一 ID
jps -q只输出进程的本地虚拟机唯一 ID。
jps -l输出主类的全名,如果进程执行的是 Jar 包,输出 Jar 路径。
jps -v输出虚拟机进程启动时 JVM 参数。
jps -m输出传递给 Java 进程 main() 函数的参数。
2、jstat(监视虚拟机各种运行状态信息)
命令说明
jstat -class vmid显示 ClassLoader 的相关信息;
jstat -compiler vmid显示 JIT 编译的相关信息;
jstat -gc vmid显示与 GC 相关的堆信息;
jstat -gccapacity vmid显示各个代的容量及使用情况;
jstat -gcnew vmid显示新生代信息;
jstat -gcnewcapcacity vmid显示新生代大小与使用情况;
jstat -gcold vmid显示老年代和永久代的信息;
jstat -gcoldcapacity vmid显示老年代的大小;
jstat -gcpermcapacity vmid显示永久代大小;
jstat -gcutil vmid显示垃圾收集信息;
3、jinfo (实时地查看和调整虚拟机各项参数)
命令说明
jinfo vmid输出当前 jvm 进程的全部参数和系统属性 (第一部分是系统的属性,第二部分是 JVM 的参数)。
jinfo -flag [name] vmid输出对应名称的参数的具体值。比如输出 MaxHeapSize、查看当前 jvm 进程是否开启打印 GC 日志
jinfo -flag [+|-]name vmid开启或者关闭对应名称的参数。
4、jmap (生成堆转储快照)
5、jhat (分析 heapdump 文件)

用于分析 heapdump 文件,它会建立一个 HTTP/HTML 服务器,让用户可以在浏览器上查看分析结果。

6、jstack (生成虚拟机当前时刻的线程快照)

命令用于生成虚拟机当前时刻的线程快照。线程快照就是当前虚拟机内每一条线程正在执行的方法堆栈的集合.

二、JDK可视化工具

1、JConsole(Java 监视与管理控制台)

在这里插入图片描述

2、VisualVM(多合一故障处理工具)

在这里插入图片描述

  • 显示虚拟机进程以及进程的配置、环境信息(jps、jinfo)。
  • 监视应用程序的 CPU、GC、堆、方法区以及线程的信息(jstat、jstack)。
  • dump 以及分析堆转储快照(jmap、jhat)。
  • 方法级的程序运行性能分析,找到被调用最多、运行时间最长的方法。
  • 离线程序快照:收集程序的运行时配置、线程 dump、内存 dump 等信息建立一个快照,可以将快* 照发送开发者处进行 Bug 反馈。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值