Chinaunix首页 | 论坛 | 博客
  • 博客访问: 55847
  • 博文数量: 5
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 149
  • 用 户 组: 普通用户
  • 注册时间: 2014-07-30 10:12
个人简介

记录学习、工作的点点滴滴

文章存档

2014年(5)

我的朋友

分类: LINUX

2014-09-15 22:01:29

本文转载自:http://www.blogjava.net/kelly859/archive/2012/05/01/377091.html



l        Procs

     r列表示运行和等待cpu时间片的进程数,这个值如果长期大于系统CPU的个数,说明CPU不足,需要增加CPU。

     b列表示在等待资源的进程数,比如正在等待I/O、或者内存交换等。

l        memory

    swpd列表示切换到内存交换区的内存数量(以k为单位)。如果swpd的值不为0,或者比较大,只要siso的值长期为0,这种情况下一般不用担心,不会影响系统性能。

    free列表示当前空闲的物理内存数量(以k为单位)

    buff列表示buffers cache的内存数量,一般对块设备的读写才需要缓冲。

    cache列表示page cached的内存数量,一般作为文件系统cached,频繁访问的文件都会被cached,如果cache值较大,说明cached的文件数较多,如果此时IObi比较小,说明文件系统效率比较好。

l        swap

    si列表示由磁盘调入内存,也就是内存进入内存交换区的数量。

    so列表示由内存调入磁盘,也就是内存交换区进入内存的数量。

    内存够用的时候,这2个值都是0,如果这2个值长期大于0时,系统性能会受到影响,磁盘IOCPU资源都会被消耗。

    有些朋友看到空闲内存(FREE)很少的或接近于0时,就认为内存不够用了,实际上不能光看这一点,还要结合si,so,如果free很少,但是si,so也很少(大多时候是0),那么不用担心,系统性能这时不会受到影响的。

l        IO

    bi:从块设备读入的数据总量(读磁盘)(KB/S)

    bo:写入到块设备的数据总量(写磁盘)(KB/S)

    随机磁盘读写的时候,这2个值越大(如超出1M),能看到CPU在IO等待的值也会越大

l        System

    in 每秒的中断数,包括时钟中断。

cs 每秒的环境(上下文)切换次数。

上面2个值越大,会看到由内核消耗的CPU时间会越大 

l        Cpu

    us列显示了用户进程消耗的CPU 时间百分比。us的值比较高时,说明用户进程消耗的cpu时间多,但是如果长期大于50%,就需要考虑优化程序或算法。

    sy列显示了内核进程消耗的CPU时间百分比。Sy的值较高时,说明内核消耗的CPU资源很多。

根据经验,us+sy的参考值为80%,如果us+sy大于 80%说明可能存在CPU资源不足。

    id CPU处于空闲状态时间百分比

wa IO等待消耗的CPU时间百分比wa的值高时,说明IO等待比较严重,这可能由于磁盘大量作随机访问造成,也有可能磁盘出现瓶颈(块操作)

  情景分析
    vmstat的输出哪些信息值得关注?
    --proc r:运行的进程比较多,系统很繁忙
    --IO bo:磁盘写的数据量稍大,如果大文件的写,10以内基本不用担心,如果是小文件2M以前基本正常,
    --CPU us:持续大于50,服务高峰期可以接受
    --CPU wa:稍微有些同
    --CPU id:持续小于50,服务高峰期可以接受 

阅读(2633) | 评论(0) | 转发(0) |
0

上一篇:常用排序算法

下一篇:代码的静态检查

给主人留下些什么吧!~~