Linux排查Java占用CPU高的解决办法

1、 top查看cpu使用率过高的进程

Linux排查Java占用CPU高的解决办法_第1张图片

2、 ps -mp 【替换为进程ID PID】 -o THREAD,tid,time

ps -mp 15774 -o THREAD,tid,time

Linux排查Java占用CPU高的解决办法_第2张图片

发现线程16091占用CPU很高,时间也很长。

3、 printf “%x” 【线程ID TID】

把线程id转换成16进制

printf "%x" 16091

4. jstack 【进程ID PID】 | grep 【线程ID十六进制】 -A 20 -B 20

利用jstack工具,查看前后20行,发现问题所在

jstack 15774|grep 3edb -A 20 -B 20

你可能感兴趣的:(java并发编程)