你好,游客 登录 注册 搜索
背景:
阅读新闻

Linux系统的平均负载

[日期:2012-10-22] 来源:Linux社区  作者:Linux [字体: ]

1,Linux系统的平均负载是什么?

特定时间间隔内运行队列中的平均进程数,好象还不够明白:就是进程队列的长度,有多少个进程在排队等待运行

2,什么是"进程队列"?

一个进程满足以下条件就会位于进程队列中

1,它没有在等待I/O操作的结果

2,它没有主动进入等待状态(即没有调用wait)

3,它没有被停止

3,如何查看平均负载?

最简单的命令是uptime

例子:

[www.linuxidc.com @localhost ~]$ uptime

00:44:22 up  1:17,  3 users,  load average: 8.13, 5.90, 4,94

4,显示的内容是什么意思?

load average:    8.13,5.90,4,94

显示的是过去的1,5,15分钟内进程队列中的平均进程数量

5,如何衡量当前系统是否负载过高?

如果每个cpu(可以按CPU核心的数量计算)上当前活动进程数不大于3,则系统性能良好,

不大于4,表示可以接受

如大于5,则系统性能问题严重

上面例中的8.13,如果有2个cpu核心,则8.13/2=4.065,  此系统性能可以接受

建议设置严格的报警值为: CPU核心的数量

比如:CPU核心数量为2,则设置报警值为2

(这样设置是合理的,因为毕竟不是每个应用都支持多CPU及多核心)

6,查看平均负载的命令

有5个可用:

tload    能够绘制出负载变化的图形

uptime  同时显示开机以来的时间

w        同时显示出已登录的用户

top      这个对资源占用太高,不建议使用

cat /proc/loadavg  通过/proc系统信息得到平均负载

注意:如果你要持续的观察平均负载,建议用 watch uptime  或 watch cat /proc/loadavg

备注:关于watch:每隔一定时间执行指定的程序,并全屏显示结果。时间默认是2秒。

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款