vmstat
vmstat 是个查看系统整体性能的小工具,小巧、即使在很 heavy 的情况下也运行良好,并且可以用时间间隔采集得到连续的性能数据。
$ vmstat 1 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ r b swpd free buff cache si so bi bo in cs us sy id wa st 2 1 140 2787980 336304 3531996 0 0 0 128 1166 5033 3 3 70 25 0 0 1 140 2788296 336304 3531996 0 0 0 0 1194 5605 3 3 69 25 0 0 1 140 2788436 336304 3531996 0 0 0 0 1249 8036 5 4 67 25 0 0 1 140 2782688 336304 3531996 0 0 0 0 1333 7792 6 6 64 25 0 3 1 140 2779292 336304 3531992 0 0 0 28 1323 7087 4 5 67 25 0
参数介绍:
r,可运行队列的线程数,这些线程都是可运行状态,只不过 CPU 暂时不可用;
b,被 blocked 的进程数,正在等待 IO 请求;
in,被处理过的中断数
cs,系统上正在做上下文切换的数目
us,用户占用 CPU 的百分比
sys,内核和中断占用 CPU 的百分比
wa,所有可运行的线程被 blocked 以后都在等待 IO,这时候 CPU 空闲的百分比
id,CPU 完全空闲的百分比
swpd,已使用的 SWAP 空间大小,KB 为单位;
free,可用的物理内存大小,KB 为单位;
buff,物理内存用来缓存读写操作的 buffer 大小,KB 为单位;
cache,物理内存用来缓存进程地址空间的 cache 大小,KB 为单位;
si,数据从 SWAP 读取到 RAM(swap in)的大小,KB 为单位;
so,数据从 RAM 写到 SWAP(swap out)的大小,KB 为单位;
bi,磁盘块从文件系统或 SWAP 读取到 RAM(blocks in)的大小,block 为单位;
bo,磁盘块从 RAM 写到文件系统或 SWAP(blocks out)的大小,block 为单位
mpstat
mpstat 和 vmstat 类似,不同的是 mpstat 可以输出多个处理器的数据,下面的输出显示 CPU1 和 CPU2 基本上没有派上用场,系统有足够的能力处理更多的任务。
$ mpstat -P ALL 1 Linux 2.6.18-164.el5 (vpsee) 11/13/2009 02:24:33 PM CPU %user %nice %sys %iowait %irq %soft %steal %idle intr/s 02:24:34 PM all 5.26 0.00 4.01 25.06 0.00 0.00 0.00 65.66 1446.00 02:24:34 PM 0 7.00 0.00 8.00 0.00 0.00 0.00 0.00 85.00 1001.00 02:24:34 PM 1 13.00 0.00 8.00 0.00 0.00 0.00 0.00 79.00 444.00 02:24:34 PM 2 0.00 0.00 0.00 100.00 0.00 0.00 0.00 0.00 0.00 02:24:34 PM 3 0.99 0.00 0.99 0.00 0.00 0.00 0.00 98.02
转载于:https://blog.51cto.com/zhangshaoxiong/1212860