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故障排除工具

检测死锁

相关推荐
Derek_Smart15 小时前
从一次 OOM 事故说起:打造生产级的 JVM 健康检查组件
java·jvm·spring boot
大道至简Edward21 小时前
深入 JVM 核心:一文读懂 Class 文件结构(附 Hex 实战解析)
jvm
weisian1514 天前
JVM--20-面试题6:如何判断对象可以被垃圾回收?
jvm·可达性算法
蚊子码农5 天前
每日一题--JVM线程分析与死锁排查
jvm
xuxie995 天前
NEXT 1 进程2
java·开发语言·jvm
weisian1515 天前
JVM--19-面试题5:说说JVM的类加载机制和双亲委派模型
jvm·双亲委派模型·jvm类加载机制
亓才孓5 天前
【反射机制】
java·javascript·jvm
Volunteer Technology5 天前
JVM之性能优化
jvm·python·性能优化
Andy Dennis5 天前
Java语法注意事项
java·开发语言·jvm
坚持的小马5 天前
JVM相关笔记-jps
jvm·笔记