系列文章目录
错误排查笔记(一)——客户反馈使用服务器突然出现明显延迟卡顿应该如何排查与解决方案
错误排查笔记(二)——服务器资源占用问题排查方法
错误排查笔记(三)——某个应用的CPU使用率过高
错误排查笔记(四)——linux定时任务无法正常运行shell脚本
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
记录遇到的相关问题以及解决方案,旨在能够尽可能掌握排错思路与命令
提示:以下是本篇文章正文内容,下面案例可供参考
1、查找CPU占用高的程序
top -c
查看cpu占用信息,从大到小排列
引用网络图片:
找到CPU使用高的线程,pid2552
2.根据PID进一步找CPU高的线程
top -H -p 2552
定位问题线程
找到PID为2553的线程
3.查看问题线程的堆栈信息
将2553转为16进制
printf "%x\n" 2553
9f9
使用jstack pid |grep tid查看线程堆栈信息,并且输出到jstack.log文件中
# 得到堆栈日志中的后30行
jstack 2552 |grep 2553 -A 30 > jstack.log
分析堆栈日志
cat jstack.log
分析得到具体原因
总结
提示:这里对文章进行总结:
以上就是该问题的排错分析的具体过程。