Linux—系统中的load average

178 阅读1分钟

load average 定义

linux系统中的Load是对当前CPU负载的统计;
Load Average 就是一段时间 (1 分钟、5分钟、15分钟) 内平均 Load 。

通过系统命令"w"查看当前load average情况

image.png

上边0.08,0.02,0.01表示

第一位0.08:表示最近1分钟平均负载
第二位0.02:表示最近5分钟平均负载
第三位0.01:表示最近15分钟平均负载

load average值的含义

1) 单核处理器

假设我们的系统是单CPU单内核的,把它比喻成是一条单向马路,把CPU任务比作汽车。当车不多的时候,load <1;当车占满整个马路的时候 load=1;当马路都站满了,而且马路外还堆满了汽车的时候,load>1

2) 多核处理器

我们经常会发现服务器Load > 1但是运行仍然不错,那是因为服务器是多核处理器(Multi-core)。
假设我们服务器CPU是2核,那么将意味我们拥有2条马路,我们的Load = 2时,所有马路都跑满车辆。

查看你的物理CPU个数
grep 'physical id' /proc/cpuinfo | sort -u | wc -l 

统计cpu的核心总数。
可以使用指令 grep 'cpu cores' /proc/cpuinfo | wc -l 

查看逻辑CPU数。
可以使用指令 grep 'processor' /proc/cpuinfo | wc -l 

什么样的Load average值要提高警惕

  • 0.7 < load < 1: 此时是不错的状态,如果进来更多的汽车,你的马路仍然可以应付。
  • load = 1: 你的马路即将拥堵,而且没有更多的资源额外的任务,赶紧看看发生了什么吧。
  • load > 5: 非常严重拥堵,我们的马路非常繁忙,每辆车都无法很快的运行