命令行工具
jps
列出当前机器上正在运行的虚拟机进程
jstat
是用于监视虚拟机各种运行状态信息的命令行工具,jstat -gc 13616 (这个 13616 是 JVM 的进程,通过 JPS 命令得到)
jmap
用于生成堆转储快照(一般称为 heapdump 或 dump 文件)
jmap –heap pid(-heap 打印 heap 的概要信息 )
jmap –histo:live pid 如果 live 子参数加上后,只统计活的对象数量. -histo 打印每个 class 的实例数目,内存占用,类全名信息. 但是这样显示太多了,一般在 linux 上会这么操作 jmap –histo 1196 | head -20
-dump 生成的堆转储快照(比较重要)
==jmap-dump:live,format=b,file=heap.bin pid ==
jstack
(StackTraceforJava)命令用于生成虚拟机当前时刻的线程快照。线程快照就是当前虚拟机内每一条线程正在执行的方法堆栈的集合,生成线程快照的主 要目的是定位线程出现长时间停顿的原因,如线程间死锁、死循环、请求外部资源导致的长时间等待等都是导致线程长时间停顿的常见原因。
jstack pid
Arthas
java-jararthas-boot.jar
Dashboard
trace