linux cpu过高

排查java进程占用CPU过高思路

1.提取占用CPU过高的进程

方法一:使用top查找到占用CPU高的进程的pid

top -d 1

方法二:使用ps查找到tomcat运行的进程pid

ps -ef | grep tomcat

2.定位问题线程的pid

(此处pid为上一步找到的进程id)

方法一:使用top查询该进程下所有线程的运行情况

top -Hp pid

方法二:使用ps查看该进程的线程情况

ps -mp pid -o THREAD,tid,time

3.将线程的pid转换为16进制

(此处的pid为上一步找到的占CPU高的线程id)

printf ‘%x\n’ pid

4.用jstack打印线程信息 ,可将信息重定向到文件中

(pid为第一步找到的进程id,tid为第三步转换的线程id)

jstack pid |grep tid

例如:jstack 30116 | grep -A 20 75cf 或 jstack 30116 |grep 75cf >> jstack.out

5.进行分析

posted @   追梦$少年  阅读(37)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示