linux-vmstat命令详解
http://www.poluoluo.com/server/201011/98240.html
名称:报告虚拟内存的统计信息
格式:vmstat [-n] [延时[次数]]
描述:这个命令是非常有用的务必要熟练掌握!
选项:
-n 开头令第一次的信息只显示一次而不是周期地产生
-S 单位大小
-a 显示活跃和不活跃的内存信息
-s 显示相关虚拟内存统计表
输出信息简介:
Proc
r:运行和等待(CPU时间片)运行的进程数,这个值也可以判断是否需要增加CPU(长期大于1)
b:处于不可中断状态的进程数。常见情况由IO引起
Memory
swpd:切换到交换内存上的内存(默认以KB为单位)
说明:如果它不为0或者比较大比如超过100M,但是si so 的值长期为0.这种情况不用担心系统性能
free:空闲的物理内存
buff:作为buffer cache的内存,对块设备的读写作缓冲
cache:作page cache的内存,文件系统级的cache
如果cache值大的时候说明cache住的文件数多,如果频繁访问到的文件都能被cache住那磁盘的读IO bi会非常小。
Swap
si: 交换内存使用,由磁盘调入内存
so: 交换内存使用,由内存调入磁盘
说明:如果系统的内存够用的时候这两个值都是0,如果这两个值长期大于0说明系统性能受到影响。
如果系统的内存free 很少,但是si so也很少,那系统性能不会受到影响的!
IO
bi:从块设备读入的数据总量(读磁盘)(KB/s)
bo:写入到块设备的数据总量(写磁盘)(KB/s)
System
in: 每秒产生的中断次数
cs: 每秒产生的上下文切换次数
说明:这两个值越大,会看到由内核消耗的CPU时间会越多!
cpu-
us: 用户进程消耗的CPU时间百分比
us的值比较高时,说明用户进程的消耗的CPU时间多,如果长期超过50%的使用那就要考虑优化程序算法或加速。
sy 内核进程消耗的CPU时间百分比
如果sy的值高时说明系统内核消耗的CPU资源多。要检查原因
wa IO等待消耗的CPU时间百分比
wa值如果高时说明IO等待比较严重。可能是由于磁盘在做大量的随机访问造成,也可能是磁盘的带宽出现瓶颈
id: CPU处于空闲状态时间百分比