Linux CPU飙升排查五步法解读
作者:奈斯菟咪踢呦
这篇文章主要介绍了Linux CPU飙升排查五步法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
排查思路-五步法
1. top命令定位应用进程pid
找到最耗时的CPU的进程pid
top
2. top-Hp[pid]定位应用进程对应的线程tid
找到最消耗CPU的线程ID
// 执行 top -Hp [pid] 定位应用进程对应的线程 tid // 按shift + p 组合键,按照CPU占用率排序 > top -Hp 11168
3. printf"%x\n"[tid]将tid转换为十六进制
将线程pid转换为16进制
// printf "%x\n" [tid] 将tid转换为十六进制 > printf "%x\n" 26215 6667
4.jstack[pid]|grep-A10[tid的十六进制]打印堆栈信息
查看线程的堆栈信息
// jstack [pid] | grep -A 10 [tid的十六进制] 打印堆栈信息 > jstack 26215 | grep -A 10 6667
可以查看到代码具体代码行报错
5.根据堆栈信息分析问题
找到对应代码,分析代码
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。