1.问题情景
我们的接口卡死,CPU飙高到打不开的网页
2.问题定位
2.1 top指令
通过top命令找到CPU耗用最厉害的那个进程的PID
直接输入top
Linux下的100%代表一个核心,如果是八核,最高可以到800%,这样才算满
然后通过PID找到CPU耗用最厉害的线程
2.2 通过top-h-p + 进程ID 指令
直接输入 top-h-p + 进程id,直接查找,可以发现哪些进程耗用比较厉害。
如上图,我们以100386这个进程ID为例。
第一步,需要将其转变成16进制,通过下面的命令:
printf’0x%x\n’ 线程PID
此时可以得到它的16进制。
第二步,我们需要结合
jstack 进程PID |grep 16进程PID -A 20
表示显示20行
然后就可以发现具体哪个代码,产生了问题。