平均负载

116 阅读2分钟
  1. 什么是平均负载 单位时间内,系统处于可运行状态和不可中断的平均线程数。 可运行状态指的是,使用ps命令时,处于R的状态(Running/Runnable)的进程。而不可中断状态的进程指的是:正处于内核关键流程中的进程,并且这些流程是不可打断的,比如等待硬件设备的I/O响应,也就是在ps命令中看到的D状态的进程。

  2. 平均负载的数字意义 当平均负载为2时,意味着什么呢? (1)在只有2个CPU的系统上,意味着所有的CPU都刚好被完全占用。 (2)在4个CPU上,意味着CPU有50%的空闲。 (3)而在只有1个CPU的系统中,则意味着有一半的进程竞争不到CPU。 平均负载为多少时合理? 平均负载最理想的情况是等于CPU的个数。所以在评判平均负载时,首先你要知道有几个CPU,这可以通过top命令读取。uptime命令可以看到三种负载,分别表示1,5,15分钟内的负载。应当结合着三个数字综合分析系统的负载。总体而言,当平均负载高于CPU数量70%的时候,就应该排查负载高的问题了。

  3. 当CPU使用率达到100%时,改采取什么措施。 user:代表用户态CPU时间。 nice:代表低优先级用户态CPU时间,也就是进程的nice值被调整为1-19之间的CPU时间。 system:代表内核态CPU时间。 idle:代表空闲时间。 iowait:代表等待I/O的CPU时间。 irq:代表处理硬中断的CPU时间。

  4. 查看CPU使用率 top现实了系统总体的CPU和内存使用情况,以及各个进程的资源使用情况。 ps则只显示了每个进程的资源使用情况。 pidstat:间隔1秒展示了进程的5组使用率(用户态使用率、内核态使用率、运行虚拟机使用率、等待CPU使用率,总的CPU使用率) perf top;能够实时显示占用CPU时钟最多的函数或者指令,可以用来查找热点函数。