JVM监控和管理工具

基础故障处理工具

jps

**jps(JVM Process Status Tool):**Java虚拟机进程状态工具

功能

**1:**列出正在运行的虚拟机进程
2: 显示虚拟机执行主类(main()方法所在的类)
**3:**显示进程ID(PID,Process Identifier)

命令格式

bash 复制代码
jps [options] [hostid]

options

-q: 只输出进程ID
**-m:**输出main()方法的args参数
**-l:**输出主类的全名(如果进程执行的是Jar包则输出Jar路径)
**-v:**查看虚拟机启动时显式指定的参数列表

hostid

**hostid:**RMI注册表中注册的主机名

jstat

**jstat(JVM Statistics Monitoring Tool):**Java虚拟机统计信息监控工具

**功能:**显示本地或者远程虚拟机进程中的类加载、内存、垃圾收集、即时编译等运行时数据

命令格式

复制代码
jstat <option> <vmid> [ [interval[s|ms] [count]] ]

参数说明

**option:**用户希望查询的虚拟机信息(类加载、垃圾收集、运行期编译状况)

vmid: 本地虚拟机进程中VMID与PID是一致的
**interval:**查询间隔
count: 次数

jinfo

**jinfo(Java Configuration Info):**Java配置信息工具

**功能:**实时查看和调整虚拟机各项参数

命令格式

复制代码
jinfo [option] <pid>

option

**-flag <name>:**打印指定的参数
**-flag +\|-<name>:**启用或禁用指定的参数
**-flag <name>=<value>:**修改指定参数的值
**-flags:**打印所有的参数
**-sysprops:**打印所有的Java系统属性

jmap

**jmap(Java Memory Map):**Java内存映像工具

功能: 生成堆转储快照(一般称为heap dump或dump文件)

命令格式

bash 复制代码
jmap [option] <pid>

option

-dump:live,format=b,file=heap.bin: 生成二进制格式的heap dump文件,live参数表示会主动执行一次垃圾回收

**-heap:**查看堆内存快照信息

jstack

**jstack(Java Stack Trace):**Java堆栈跟踪工具

**功能:**生成虚拟机当前时刻的线程快照(一般称为thread dump或者java core文件)

命令格式

复制代码
jstack [option] <pid>

option

可视化故障处理工具

JConsole

**JConsole(Java Monitoring and Management Console):**Java监控与管理控制台

**原理:**基于JMX(Java Management Extensions)

**功能:**通过JMX的MBean(Managed Bean)对系统进行信息收集和参数动态调整

命令格式

bash 复制代码
jconsole

检测死锁

VisualVM

下载地址: VisualVM: Home

**VisualVM(All-in-One Java Troubleshooting Tool):**多功能Java故障排除工具

检测死锁

相关推荐
lsylalalala5 小时前
JVM(Java虚拟机)
jvm
xieliyu.11 小时前
JVM 垃圾回收机制详解:从标记过程、回收算法到垃圾收集器
java·jvm·笔记·java-ee
此时不提桶,更待何时20 小时前
01-04-B-垃圾回收面试与生产事故实战
java·jvm·面试
kian.wqn1 天前
【JVM核心体系02】JVM 运行时内存区域:堆、栈、元空间、直接内存一次讲清
jvm
用户094248568032 天前
第12章:JDK 诊断工具箱——jps / jstat / jmap / jcmd / jhsdb
java·jvm
程序员阿鹏2 天前
双亲委派机制
java·jvm·数据结构·后端
用户094248568032 天前
第11章:OpenJDK反射、动态代理与 MethodHandle 初探
java·jvm
wuminyu2 天前
纯轻量级锁体系下C2编译器锁粗化和消除机制剖析
java·linux·c语言·jvm·c++
binqian2 天前
【java】Java 两种锁机制与线程阻塞唤醒原理
jvm·spring boot·spring