java服务CPU占用过高

文章目录


以下代码没有特殊说明,都是指终端命令行操作

1、查看占用CPU高的进程

top

java服务CPU占用过高

2、查看服务线程信息

ps -mp 183 -o THREAD,tid,time

java服务CPU占用过高

3、查看问题线程状态

通过上一步,我们可以看到TID为220的线程占用cpu比较高。
转化为16进制方便后续查询。

printf "%x\n" 220

java服务CPU占用过高
查看该线程运行状态。

jstack 183 | grep dc

java服务CPU占用过高

4、jstack查看线程信息

jstack 183

java服务CPU占用过高

5、代码问题排查

从上一步我们可以定位到ValueLoad类中的print()接口,再结合我们的代码逻辑具体分析。
java服务CPU占用过高

上一篇:Linux服务器java -version提示java: 未找到命令(jstack未找到命令)


下一篇:dolphinscheduler 单点部署 踩坑