一、 uptime 和 w 命令
uptime
命令和 w
命令都可以显示系统当前的负载:
1 2 3 4 5 6 |
ma@centos7:~$ uptime 09:37:15 up 19 days, 20 min, 1 user, load average: 0.00, 0.01, 0.05 ma@centos7:~$ w 09:37:17 up 19 days, 20 min, 1 user, load average: 0.00, 0.01, 0.05 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT ma pts/0 200.200.65.82 09:28 5.00s 0.01s 0.00s w |
- 09:37:15 up 19 days, 20 min:系统启动时间
- 1 user:当前有一个用户在线
- load average: 0.00, 0.01, 0.05:1 分钟、 5 分钟和 15 分钟内的 cpu 平均负载
关于系统负载
系统平均负载被定义为在特定时间间隔内运行队列中的平均进程数,如果一个进程满足以下条件则其就会位于运行队列中:
- 它没有在等待 I/O 操作的结果
- 它没有主动进入等待状态 (也就是没有调用
wait
) - 没有被停止 (例如:等待终止)
一般来说,每个 CPU 内核当前活动进程数不大于 3,则系统运行表现良好!当然这里说的是每个 cpu 内核,如果主机是四核 cpu 的话,那么只要 uptime 最后输出的一串字符数值小于 12 即表示系统负载不是很严重。如果达到 20,那就表示当前系统负载非常严重。
二、/proc/loadavg
/proc/loadavg
也能显示系统的负载信息:
1 2 |
ma@centos7:~$ cat /proc/loadavg 0.01 0.02 0.05 1/199 19643 |
前面三个也是分别表示 1 分钟、 5 分钟以及 15 分钟的系统平均负载。后面的 1/199
表示系统当前共有 199 个进程,其中 1 个进程处于运行状态。 19643
表示最后一个运行的进程 ID 。
评论