vmstat命令——监控给定时间间隔的服务器的状态值

vmstat n m 时间间隔为n秒,采集m组数据
vmstat n     时间间隔为n秒

# vmstat 2 3
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0    252  99272 148444 614268    0    0     0     9    4    2  0  0 99  0  0
 0  0    252  99264 148444 614288    0    0     0     0   61  101  0  0 100 0  0
 0  0    252  98780 148444 614288    0    0     0     0   89  195  1  1 97  0  0

===proces===
r:表示运行队列(就是说多少个进程真的分配到CPU)
b:表示阻塞的进程
*分析
(1)r:当这个值超过了CPU数目,就会出现CPU瓶颈;如果运行队列过大,表示你的CPU很繁忙,一般会造成CPU使用率很高


===memory内存使用率===
swpd:虚拟内存已使用的大小
free:空闲的物理内存大小
buff:目录占用的缓存大小
cache:文件占用的缓存大小
*分析
(1)swpd:这个值如果大于0,表示你的机器物理内存不足了,如果不是程序内存泄露的原因,那么你该升级内存了或者把耗内存的任务迁移到其他机器

===swap虚拟内存交换情况===
si:每秒从磁盘读入虚拟内存的大小
so:每秒虚拟内存写入磁盘的大小 
*分析
(1)si:如果这个值大于0,表示物理内存不够用或者内存泄露了,要查找耗内存进程解决掉
(2)so:如果这个值大于0,同上

 

===IO读写情况===
bi:块设备每秒接收的块数量,这里的块设备是指系统上所有的磁盘和其他块设备,默认块大小是1024byte
in:每秒CPU的中断次数,包括时间中断
cs:每秒上下文切换次数

 

===cpu使用率===
us:用户cpu时间
sy:系统cpu时间
id:空闲cpu时间
wa:等待io的cpu时间

posted @ 2016-08-08 16:56  Jelly_lyj  阅读(471)  评论(0编辑  收藏  举报