Linux环境下CPU飙高排查方案与思路分析

50 阅读1分钟

1、使用top命令查看占用CPU的情况

# 拿到占用高的进程ID 
top

2、通过top命令查看后,可以查看是哪个进程占用CPU较高

一般top命令排在第一位的是占用较高的那个,也可以搜索具体的应用名称

3、使用ps命令查看进程中的线程信息

# 通过上步拿到的进程id查询线程ID 
ps H -eo pid,tid,%cpu | grep 进程id

4、使用jstack命令查看进程中哪些线程出现了问题,最终定位问题

jstack 线程ID

jstack 命令显示内容中是十进制的地址,需要获取到十进制的线程ID,可以通过Linux命令获取,如下:

printf "%x\n" 线程ID

然后就可以通过这个十进制的线程ID在jstack命令结果文档走搜索具体问题信息了。