vmstat是一个全面的性能分析工具,可以用来观察系统的进程、IO、内存、CPU使用情况,对优化系统有很大的帮助。
vmstat 2 2
参数说明:
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 0 362212 131608 314792 0 0 4 16 468 63 0 0 99 0 0
0 0 0 362212 131608 314792 0 0 0 0 999 45 0 0 100 0 0
0 0 0 362212 131608 314792 0 0 0 0 1007 65 0 0 100 0 0
procs:
r 正在运行或等待CPU的进程数
b 等待IO/内存等资源的进程数
memory:
swpd 虚拟内存的使用量
free 空闲的内存量
buff 块设备读写缓存
cache 文件系统读写缓存
SWAP:
si 从磁盘交换到内存的交换页数量,单位KB。
so 从内存交换到磁盘的交换页数量,单位KB。
IO:
bi 读取块设备的数量,单位块。
bo 写入块设备的数量,单位块。
System:
in 每秒的中断数,包括时钟中断。
cs 每秒的环境上下文切换次数。
CPU:
us 用户进程占用时间
sy 系统占用时间
id 闲置时间
wa IO等待时间
总结:
如果r大于3或4,且id小于%50,则CPU是瓶颈。
wa经常不等于0,b中的队列较大,则IO是瓶颈。
如bi bo长期不等于0,则内存较小。