CPU飙高排查方法

1、执行top查看哪个进程占用cpu高,见下图看是121进程占用cpu高。

 

 

 

 

 

2、执行ps -ef|grep {$进程pid} 查看是何业务的进程。

3、查看是进程中的哪些线程占用cpu高,执行 ps mp {$进程pid} -o THREAD,tid,见下图:

 

 

4、获取到占用cpu高的线程TID,换算为16进制,如上图572的TID换算为16进制后是23c

5、执行 jstack pid > jstack.log 搜集堆栈信息,搜索上述的16进制tid查看堆栈,见下图:

 

 根据jstack堆栈信息结合业务使用情况分析定位原因。

 

posted @ 2020-09-27 14:52  万能阿超  阅读(800)  评论(0编辑  收藏  举报