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

检测死锁

相关推荐
CCCC13101639 小时前
嵌入式学习(day 28)线程
jvm·学习
没有bug.的程序员9 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎
java·jvm·python·虚拟机
舒一笑19 小时前
Started TttttApplication in 0.257 seconds (没有 Web 依赖导致 JVM 正常退出)
jvm·spring boot·后端
搬砖的小熊猫21 小时前
JVM核心原理与实战优化指南
jvm
静若繁花_jingjing1 天前
JVM执行引擎深入理解
jvm
CHEN5_021 天前
【Java虚拟机】垃圾回收机制
java·开发语言·jvm
静若繁花_jingjing3 天前
JVM对象创建和内存分配机制
jvm
##学无止境##3 天前
深入浅出JVM:Java虚拟机的探秘之旅
java·开发语言·jvm
阿熊不凶3 天前
c语言中堆和栈的区别
java·c语言·jvm