linux 性能监控分析以及调优(vmstat)

11 篇文章 0 订阅

1.linux 监控分析常用命令:
vmstat , iostat ,netstat
sar , top , free , uptime , ps ,strace , lsof

2. vmstat 的使用和说明:
vmstat可以对操作系统的内存信息、进程状态、CPU活动、磁盘等信息进行监控,不足之处是无法对某个进程进行深入分析.
这里写图片描述

2.1 vmstat命令用法
这里写图片描述

2.2 vmstat 字段说明
•procs
1)R 列表示运行和等待CPU时间片的进程数,这个值如果长期大于系统CPU个数,说明CPU不足,需要增加CPU。
2)B列表示在等待资源的进程数,比如正在等待I/O或者内存交换等。
•memory
1) swpd列表示切换到内存交换区的内存大小(单位KB),通俗讲就是虚拟内存的大小。如果swap值不为0或者比较大,只要si、so的值长期为0.这种情况一般属于正常情况。
2) free列表示当前空闲的物理内存(单位KB)。
3) Buff列表示buffers cached内存大小,也就是缓冲大小,一般对块设备的读写才需要缓冲。
4) Cache列表示page cached的内存大小,也就是缓存大小,一般作为文件系统进行缓冲,频繁访问的文件都会被缓存,如果cache值非常大说明缓存文件比较多,如果此时io中的bi比较小,说明文件系统效率比较好。
•swap
1) Si列表示由磁盘调入内存,也就是内存进入内存交换区的内存大小。
2) so列表示由内存进入磁盘,也就是有内存交换区进入内存的内存大小。
一般情况下,si、so的值都为0,如果si、so的值长期不为0,则说明系统内存不足,需要增加系统内存。
•io
1) bi列表示由块设备读入数据的总量,即读磁盘,单位kb/s。
2) bo列表示写到块设备数据的总量,即写磁盘,单位kb/s。
如果bi+bo值过大,且wa值较大,则表示系统磁盘IO瓶颈。
•system
1) in列表示某一时间间隔内观测到的每秒设备中断数。
2) cs列表示每秒产生的上下文切换次数。
这2个值越大,则由内核消耗的CPU就越多。
•cpu
1) us列表示用户进程消耗的CPU时间百分比,us值越高,说明用户进程消耗cpu时间越多,如果长期大于50%,则需要考虑优化程序或者算法。
2) sy列表示系统内核进程消耗的CPU时间百分比,一般来说us+sy应该小于80%,如果大于80%,说明可能出现CPU瓶颈。
3) id列表示CPU处在空闲状态的时间百分比。
4) wa列表示等待所占的CPU时间百分比,wa值越高,说明I/O等待越严重,根据经验wa的参考值为20%,如果超过20%,说明I/O等待严重,引起I/O等待的原因可能是磁盘大量随机读写造成的,也可能是磁盘或者此监控器的带宽瓶颈(主要是块操作)造成的。
综上所述,如果评估CPU,需要重点关注procs项的r列值和CPU项的us、sy、wa列的值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值