本文章参考
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使用率高