• 查看当前运行的java进程及jvm参数

jps -lvm

用于查看当前机器上运行的java进程。

命令行参数选项说明如下:

-l 输出main类或Jar的全限名

-v 输出传入JVM的参数

-m 输出传入main方法的参数

 

  • 查询jvm内存区域划分及堆内存使用情况

jmap -heap PID

 

  • 查询对象情况 

 jmap -histo PID

 

查询最大的20个对象

jmap -histo PID | head -20

 

查询最小的20个对象

jmap -histo PID | tail -20

 

  • 查询jvm内存及gc情况

jstat -gc PID

 

  • 生成当前时刻的线程快照

jstack [option] PID

 

option参数

-F : 当正常输出请求不被响应时,强制输出线程堆栈

-l : 除堆栈外,显示关于锁的附加信息

-m : 如果调用到本地方法的话,可以显示C/C++的堆栈