一.查询占用CPU最高的进程
top -H
找到占用CPu高的进程号pid
二.查询占用CPU最高的线程
top -H -p pid
三.查询线程的堆栈信息
把线程pid转换为对应的16进制数字
jstack pid | grep 线程16进制 -C10 --color
查看堆栈信息,发现gc过多导致
jmap -heap pid
查看堆内存使用情况
加参数 HeapDumpOnOutOfMemory 在发生OOM时打印堆快照文件,后缀hport
用jdk自带工具jvisualVM查看对快照文件