linux性能速查-平均负载

该linux系列博客为自己速查问题而写,比较乱,仅供参考,如有问题,请参考权威书籍或文档,谢谢。

1.什么时候需要查看平均负载?

     系统或应用运行缓慢的时候。

2.平均负载的意义和误区?

      平均负载是指单位时间内,处于可运行状态不可中断状态的进程数,也就是平均活跃进程数

可运行状态:正在使用CPU或正在等待CPU,ps -aux 中stat为R的。

不可中断状态:处理内核态关键流程,如进程向磁盘写数据,ps -aux 中stat为D的。

误区:平均负载不是CPU使用率,或者不能单单指CPU使用率。平均负载高可能由以下几个原因引起:

1.CPU密集型任务,此时可以把平均负载看成CPU使用率。

2.大量IO等待,此时平均负载的升高由IO等待引起。

3.等待CPU,核数少,任务多,也会导致平均负载升高。

假如平均负载是2,对不同的核数有不同的意义:

1.如果是一个核的CPU,一半的进程竞争不到CPU。

2.如果核数为2,表示全部CPU都被占用。

3.如果核数为4,表示还有一半的CPU空闲。

平均负载中的1,5,15分钟要联合起来看,才能够全面反映系统整体的负载趋势。

3.如何查看?

使用uptime或者top均可以,如果负载高可以通过以下方式定位哪个进程导致:

使用mpstat -P ALL 3 //监控所有CPU,3为间隔,每隔3秒输出。

mpstat可以查看每个CPU的使用状况。

pidstat -u 3 20  查看进程情况,每隔3秒输出,总计20次。

pidstat用于看进程使用资源情况。

4.平均负载多少合适?

一般为不超过核数70%,cat /proc/cpuinfo|grep 'model name'|wc -l 查看核数,

如为16核,则不超过11.2。这个值只是经验值,可具体情况具体看待。

你可能感兴趣的:(Linux,linux,load,average,平均负载)