本文章参考http://blog.csdn.net/shamofeiyu/article/details/21336557,受益匪浅,特收藏,感谢作者。

1.linux系统CPU占用率高,首先需要查看那些进程cpu占用率高,这个通过top 命令,可以查看,
这里写图片描述

可见,我这里是n1l.bin 占用了几乎100% CPU,并且可看到进程id = 1526

2.进一步分析n1l.bin 里那些线程cpu占有率高,通过 pstree -f (进程pid) 命令查看进程下所有线程的pid,n1l.bin的id = 1526,输入 pstree -s 1526
这里写图片描述

分析发现,上面列车的线程数量,正好等于n1l.bin开启的线程数量,验证了准确性。

3.参考http://blog.csdn.net/shamofeiyu/article/details/21336557,打印出n1l.bin各线程的id,编写脚本stat.sh
这里写图片描述

编写运行脚本stat.sh,得到如下结果

这里写图片描述

可以看到:线程1528 1529 1530 1533 1538 cpu使用时间长,对应具体线程,
com_send RdThread WrThread DataSd_Thread Server27000_Thread

4.定位具体线程,分析什么原因导致cpu使用率高

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐