编辑
2023-05-01
Shell
00
请注意,本文编写于 861 天前,最后修改于 861 天前,其中某些信息可能已经过时。

目录

语法格式:
命令实例
什么是平均负载呢?
最理想的平均活跃进程数是什么?
平均负载为多少时合理?
实际生产中,平均负载多高时需要关注呢?
平均负载与CPU使用率

语法格式:

uptime (选项)

选项作用
-p以漂亮的格式显示机器正常运行的时间
-s系统自开始运行时间,格式为yyyy-mm-dd hh:mm
-h显示帮助信息

命令实例

如下图所示:直接输入 uptime,只有一行输出

20:00:43 => 当前系统时间 up 64 days, 6:49 => 系统自上次开机到目前运行时间 5 users => 登录到系统的用户数 load average => 系统平均负载
  • 0.24 => 1分钟内系统平均负载
  • 0.31 => 5分钟内系统平均负载
  • 0.27 => 15分钟内系统平均负载

什么是平均负载呢?

简单来说,平均负载是指单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数,它和CPU使用率并没有直接关系。

最理想的平均活跃进程数是什么?

就是刚好每个CPU上都刚好运行着一个进程,这样每个CPU都得到了充分的利用。比如平均负载为4时意味着什么呢?

  • 在只有4个CPU的系统上,意味着所有的CPU都刚好被完全占用。
  • 在8个CPU的系统上,意味着CPU有50%的空闲。
  • 而在有2个CPU系统上,意味着有一半的进程竞争不到CPU。

平均负载为多少时合理?

平均负载比CPU个数大的时候,系统就已经出现了过载。

  • 如果1分钟,5分钟,15分钟的三个值基本相同,或者相差不大,那就说明系统负载很平稳。
  • 如果1分钟的值远小于15分钟的值,就说明系统最近1分钟负载在减少,而过去15分钟内却有很大负载。
  • 反之则相反,如果1分钟的值远大于15分钟的值,说明近1分钟负载在增加,这种情况可能是临时性的,也可能还会持续,要持续观察,一旦1分钟的平均负载超过了CPU的数量,意味着系统正在发生过载的问题。

例如:一个单核系统上,平均负载为1.78,0.60,6.56,说明1分钟内,系统有78%的超载,而在15分钟内有556%的超载。

实际生产中,平均负载多高时需要关注呢?

平均负载高于CPU数量70%时,就应该分析排查负载高问题了。

平均负载与CPU使用率

  • CPU密集型进程,使用大量CPU会导致平均负载升高,此时两者时一致的。
  • I/O密集型进程,等待I/O也会导致平均负载升高,但CPU使用率不一定很高,需要结合top命令查看。
  • 大量等待CPU的进程调度也会导致平均负载升高,此时的CPU使用率也会比较高。

本文作者:shining_finger

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!