登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

银河里的星星

落在人间

 
 
 

日志

 
 

linux系统平均负载定义(zz)  

2010-03-10 15:16:17|  分类: 高性能计算 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

zzfrom:http://bbayou.blogbus.com/logs/38290786.html

为什么要监控系统的平均负载?
     有时我们会感觉到系统响应很慢,但是又找不到原因,这时要查平均负载,是否有大量的进程在排队等待  
1,平均负载是什么?
           特定时间间隔内运行队列中的平均进程数,好象还不够明白:就是进程队列的长度,有多少个进程在排队等待运行
2,什么是"进程队列"?
           一个进程满足以下条件就会位于进程队列中
                  1,它没有在等待I/O操作的结果
                  2,它没有主动进入等待状态(即没有调用wait)
                  3,它没有被停止
3,如何查看平均负载?
  最简单的命令是uptime
  例子:
  [lhd@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秒

--------------------------------------------------------------------

uptime

这个uptime外壳命令产生下列输出:

[pax:~]% uptime
9:40am up 9 days, 10:36, 4 users, load average: 0.02, 0.01, 0.00

它显示自从上次系统重启以来,活动的用户进程数量和所谓的平均负荷指标(load average)。

procinfo

在Linux系统上,procinfo命令产生以下输出:

[pax:~]% procinfo
Linux 2.0.36 (root@pax) (gcc 2.7.2.3) #1 Wed Jul 25 21:40:16 EST 2001 [pax]

Memory: Total Used Free Shared Buffers Cached
Mem: 95564 90252 5312 31412 33104 26412
Swap: 68508 0 68508

Bootup: Sun Jul 21 15:21:15 2002 Load average: 0.15 0.03 0.01 2/58 8557
...

平均负载指标出现在这个输出的左下角。

w

w(ho)命令产生下列输出:

 [pax:~]% w
  9:40am  up 9 days, 10:35,  4 users,  load average: 0.02, 0.01, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
mir ttyp0 :0.0 Fri10pm 3days 0.09s 0.09s bash
neil ttyp2 12-35-86-1.ea.co 9:40am 0.00s 0.29s 0.15s w
...

请注意,第一行的输出与uptime命令的输出相同。

top

top命令是最近加入到UNIX命令集中的,它通过计算进程消耗CPU的时间来给进程排名。它产生下列输出:

  4:09am  up 12:48,  1 user,  load average: 0.02, 0.27, 0.17
58 processes: 57 sleeping, 1 running, 0 zombie, 0 stopped
CPU states: 0.5% user, 0.9% system, 0.0% nice, 98.5% idle
Mem: 95564K av, 78704K used, 16860K free, 32836K shrd, 40132K buff
Swap: 68508K av, 0K used, 68508K free 14508K cched

PID USER PRI NI SIZE RSS SHARE STAT LIB %CPU %MEM TIME COMMAND
5909 neil 13 0 720 720 552 R 0 1.5 0.7 0:01 top
1 root 0 0 396 396 328 S 0 0.0 0.4 0:02 init
2 root 0 0 0 0 0 SW 0 0.0 0.0 0:00 kflushd
3 root -12 -12 0 0 0 SW< 0 0.0 0.0 0:00 kswapd
...

所有这些命令,请注意,输出中都有三个数字报告平均负载。相当普遍的是,这些数字显示出从左至右的降序但是有时,又是升序排列,正如上面的输出。

  评论这张
 
阅读(3339)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018