uptime
可以用来检查Linux
系统的负载状况:
$ uptime
22:53:34 up 169 days, 6:47, 19 users, load average: 1.99, 2.00, 2.03
load average
后面的3
个值分别是系统在过去1
,5
和15
分钟负载的平均值(这里的负载包含3
种进程:当前正在被CPU
执行的,一切条件就绪等待CPU
调度的,和等待I/O
操作结果的)。
vmstat
也可以用来检查Linux
系统的负载状况:
$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 0 32312576 1716732 74998032 0 0 0 8 0 0 2 0 98 0 0
2 0 0 32312264 1716732 74998032 0 0 0 0 3059 139 5 0 95 0 0
......
其中r
这一栏表示当前正在被CPU
执行的,和一切条件就绪等待CPU
调度的进程。由于其不包含等待I/O
操作结果的进程,所以vmstat
比uptime
更准确地表示系统是否“饱和”:如果r
的值大于CPU
数量(这里的CPU
指一个“逻辑CPU
”,即需要考虑物理CPU
有多个core
,每个core
支持hyper-thread
的情况),那么系统就处于饱和状态。
对于其它的Unix
系统,需要查阅文档确认是否同Linux
一致。