1、jdk命令行工具
1)jps:虚拟机进程状况工具
jps [option] [hostid]
主要参数:
2)jstat:虚拟机统计信息监视工具
jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
主要参数:
如每隔1000ms查询进程号为8675的gc信息两次,jstat -gc 8675 1000 2
3)jinfo:Java配置信息工具
可查看和实时修改虚拟机各项参数。
Usage:
jinfo [option] <pid>
(to connect to running process)
jinfo [option] <executable <core>
(to connect to a core file)
jinfo [option] [server_id@]<remote server IP or hostname>
(to connect to remote debug server)
例:查询VM中Java堆区域新生代内存的最大可分配大小
4)jmap:Java内存映像工具
Usage:
jmap [option] <pid>
(to connect to running process)
jmap [option] <executable <core>
(to connect to a core file)
jmap [option] [server_id@]<remote server IP or hostname>
(to connect to remote debug server)
常用参数:
例:
5)jhat:虚拟机堆转储快照分析工具
内置http服务器,可用来分析jmap生成的dump文件。
如:
访问http://192.168.10.92:7007/
6)jstack:生成虚拟机当前时刻的线程快照(threaddump或者javacore文件)。
Usage:
jstack [-l] <pid>
(to connect to running process)
jstack -F [-m] [-l] <pid>
(to connect to a hung process)
jstack [-m] [-l] <executable> <core>
(to connect to a core file)
jstack [-m] [-l] [server_id@]<remote server IP or hostname>
(to connect to a remote debug server)
主要参数:
7)hsdis:JIT生成代码反汇编
2、可视化工具
jconsole与visualvm(略)