A-A+

Java高CPU占用原因排查

2016年08月03日 Linux 教程 暂无评论 阅读 222 次

top命令发现某个进程占用了100%的CPU
这里写图片描述
通过ps命令,进一步确定哪个进程出了问题
这里写图片描述
再查看线程占用CPU的列表

# ps -mp PID -o THREAD,tid,time

这里写图片描述
找到占用CPU最高的线程,查看TID,将其转换为16进制格式

# printf "%x\n" TID

这里写图片描述
而后查看堆栈信息

# jstack PID |grep 16进制TID -A 60

这里写图片描述
这里报错是因为tomcat进程运行用户为tomcat,而当前以root用户查看堆栈信息
这里写图片描述
因此切换为tomcat执行命令
这里写图片描述

# sudo -u tomcat  jstack 32072 |grep 1541 -A 60
# sudo -u tomcat jstack -J-d64 -m 32072
标签:

给我留言

Copyright © SEARU.ORG 保留所有权利.   Theme  Ality 网站地图 360网站安全检测平台

用户登录

分享到: