51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4205|回复: 9
打印 上一主题 下一主题

[原创] 性能监控数据库服务器遇到的一点问题,VMSTAT这个命令有高手熟悉不??

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-1-20 10:03:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我是用VMSTAT 命令监控数据库服务器的 里面有几个值 不太明白 FR/SR 是什么意思? 这个值一般都是0但是有时候会很大!说明什么?
VMSTAT 1
r        b        avm        fre        re        pi        po        fr        sr        cy        in        sy        cs        us        sy
5        0        2472300        1361352        0        0        0        4905        44499        0        3548        20532        5092        86        14
6        0        2472294        1361336        0        0        0        13036        132721        0        3246        18860        5249        76        24
3        0        2472302        1361457        0        0        0        11825        100960        0        2400        13328        3829        79        21

[ 本帖最后由 wangmeng814 于 2009-1-20 10:25 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2009-1-20 10:06:40 | 只看该作者
网上查了一下说 如果为0的话是好事,说明内存没问题
说明你的内存请求没有超过可用的物理内存,系统不用再去检索当前全部的物理内存(sr),也不用将检索出来的物理内存(sr)能够释放出来分配(fr), 好事情。
现在的机器有足够的内存

那这里FR SR 不为0 就是 内存溢出??
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2018-2-28 18:04
  • 签到天数: 40 天

    连续签到: 1 天

    [LV.5]测试团长

    3#
    发表于 2009-1-20 10:08:25 | 只看该作者

    贴份资料给你参考

    
    vmstat 命令详解
    vmstat 是用来实时查看内存使用情况,反映的情况比用top直观一些.
    如果直接使用,只能得到当前的情况,最好用个时间间隔来采集
    vmstat T 其中T用具体的时间标示,单位是 秒 例如:vmstat 5 表格每隔5秒采集一次.
    这样在刷新的时候就能比较系统的看到那个列不正常的
    procs:
    r-->;在运行队列中等待的进程数
    b-->;在等待io的进程数
    w-->;可以进入运行队列但被替换的进程

    memoy
    swap-->;现时可用的交换内存(k表示)
    free-->;空闲的内存(k表示)

    pages
    re--》回收的页面
    mf--》非严重错误的页面
    pi--》进入页面数(k表示)
    po--》出页面数(k表示)
    fr--》空余的页面数(k表示)
    de--》提前读入的页面中的未命中数
    sr--》通过时钟算法扫描的页面

    disk 显示每秒的磁盘操作。 s表示scsi盘,0表示盘号

    fault 显示每秒的中断数
    in--》设备中断
    sy--》系统中断
    cy--》cpu交换

    cpu 表示cpu的使用状态
    cs--》用户进程使用的时间
    sy--》系统进程使用的时间
    id--》cpu空闲的时间


    其中:
    如果 r经常大于 4 ,且id经常少于40,表示cpu的负荷很重。
    如果pi,po 长期不等于0,表示内存不足。
    如果disk 经常不等于0, 且在 b中的队列 大于3, 表示 io性能不好。
    vmstat命令列出的属性详解
    2007-03-13 17:21:02 / 个人分类:Linux base

    vmstat各项:
    procs:
    r-->在运行队列中等待的进程数
    b-->在等待io的进程数
    w-->可以进入运行队列但被替换的进程
    memoy
    swap-->现时可用的交换内存(k表示)
    free-->空闲的内存(k表示)
    pages
    re--》回收的页面
    mf--》非严重错误的页面
    pi--》进入页面数(k表示)
    po--》出页面数(k表示)
    fr--》空余的页面数(k表示)
    de--》提前读入的页面中的未命中数
    sr--》通过时钟算法扫描的页面
    disk 显示每秒的磁盘操作。 s表示scsi盘,0表示盘号
    fault 显示每秒的中断数
    in--》设备中断
    sy--》系统中断
    cy--》cpu交换
    cpu 表示cpu的使用状态
    cs--》用户进程使用的时间
    sy--》系统进程使用的时间
    id--》cpu空闲的时间
    如果 r经常大于 4 ,且id经常少于40,表示cpu的负荷很重。
    如果pi,po 长期不等于0,表示内存不足。
    如果disk 经常不等于0, 且在 b中的队列 大于3, 表示 io性能不好。
    1.) 如果在processes中运行的序列(process r)是连续的大于在系统中的CPU的个数表示系统现在运行比较慢,有多数的进程等待CPU.
    2.) 如果r的输出数大于系统中可用CPU个数的4倍的话,则系统面临着CPU短缺的问题,或者是CPU的速率过低,系统中有多数的进程在等待CPU,造成系统中进程运行过慢.
    3.) 如果空闲时间(cpu id)持续为0并且系统时间(cpu sy)是用户时间的两倍(cpu us) 系统则面临着CPU资源的短缺.
    解决办法:
    当发生以上问题的时候请先调整应用程序对CPU的占用情况.使得应用程序能够更有效的使用CPU.同时可以考虑增加更多的CPU.  关于CPU的使用情况还可以结合mpstat,  ps aux top  prstat –a等等一些相应的命令来综合考虑关于具体的CPU的使用情况,和那些进程在占用大量的CPU时间.一般情况下,应用程序的问题会比较大一些.比如一些SQL语句不合理等等都会造成这样的现象.
      
      
    内存问题现象:
    内存的瓶颈是由scan rate (sr)来决定的.scan rate是通过每秒的始终算法来进行页扫描的.如果scan rate(sr)连续的大于每秒200页则表示可能存在内存缺陷.同样的如果page项中的pi和po这两栏表示每秒页面的调入的页数和每秒调出的页数.如果该值经常为非零值,也有可能存在内存的瓶颈,当然,如果个别的时候不为0的话,属于正常的页面调度这个是虚拟内存的主要原理.
      
    解决办法:
    1.调节applications & servers使得对内存和cache的使用更加有效.
    2.增加系统的内存.
    3. Implement priority paging in s in pre solaris 8 versions by adding line "set priority paging=1" in
    /etc/system. Remove this line if upgrading from Solaris 7 to 8 & retaining old /etc/system file.
    关于内存的使用情况还可以结ps aux top  prstat –a等等一些相应的命令来综合考虑关于具体的内存的使用情况,和那些进程在占用大量的内存.一般情况下,如果内存的占用率比较高,但是,CPU的占用很低的时候,可以考虑是有很多的应用程序占用了内存没有释放,但是,并没有占用CPU时间,可以考虑应用程序,对于未占用CPU时间和一些后台的程序,释放内存的占用.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
     楼主| 发表于 2009-1-20 10:09:18 | 只看该作者
    谢谢 很全我先顶 慢慢看
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
     楼主| 发表于 2009-1-20 10:12:30 | 只看该作者
    如果scan rate(sr)连续的大于每秒200页则表示可能存在内存缺陷
    那如果 我只是其中有3秒钟出现 例如150190的大数值! 是然后马上变成0 算不算内存有问题??
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2009-1-20 10:33:06 | 只看该作者
    不熟这个
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2018-2-28 18:04
  • 签到天数: 40 天

    连续签到: 1 天

    [LV.5]测试团长

    7#
    发表于 2009-1-20 10:39:11 | 只看该作者

    回复 5# 的帖子

    这个还需要结合其他的参数来判断,但如果是连续长时间出现较大数值,往往可能存在问题。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2009-1-20 10:42:41 | 只看该作者
    发觉做性能测试 忒难了。。。。。哎 书到用时方恨少啊
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-7-7 09:06
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    9#
    发表于 2009-1-20 14:38:07 | 只看该作者
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2017-8-24 09:34
  • 签到天数: 11 天

    连续签到: 2 天

    [LV.3]测试连长

    10#
    发表于 2010-10-18 16:43:30 | 只看该作者
    学习了
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-17 14:49 , Processed in 0.069667 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表