1、vmstat--Virtual Meomory Statistics,可以对操作系统的内存信息、进程状态、CPU活动等进行监视,但是无法对某个进程进行深入分析
vmstat
-n表示在周期性的循环输出,输出的头部信息仅显示一次
delay两次的输出间隔时间
count按照delay指定的时间间隔统计的次数
proces
r列表示运行和等待CPU时间片的进程数,这个值如果长期大于系统CPU个数,说明cpu不足。
b列表示等待资源的进程数,比如正在等待IO或者内存交换
memory
swap表示切换到内存交换分区的内存大小,如果其不为0或者比较大,只要si、so值长期是0就是ok
cache表示page cache的内存数量,是文件系统进行缓存,频繁访问的文件都会被缓存。如果其值大,说明缓存文件数多,如果此时io中的bi小,说明文件系统效率比较好
io
bi表示从块设备读入数据的总量--读磁盘
bo表示写到块设备的数据总量--写磁盘
system
in表示在某一时间间隔内观测到的每秒设备中断数
cs表示每表产生的上下文切换次数
上面这连个值越到内核消耗CPU时间越多
CPU
us表示用户进程消耗的cpu时间百分比。us的值比较高时,说明用户进程消耗的cpu时间多,但是长期大于50%,需要考虑优化程序
sy内核消耗cpu时间百分比
us+sy参考值是80%
***重点关注procs中的r列 && CPU中的us、sy列的值
2、sar是分析系统性能的重要工具
sar
-A显示系统所有资源设备的运行状况
-u显示系统所有CPU在采样时间内的负载状态
-P显示当前系统中指定CPU的使用情况
-d显示系统所有硬盘设备在采样时间内的使用状态
-r显示系统内存在采样时间内的使用状况
-b显示缓冲区在采样时间内的使用情况
-v显示进程、文件、节点、锁表状态
-n网络运行状态。参数后可跟DEV,EDEV,SOCK,FULL.
DEV显示网络接口信息,EDEV显示网络错误的统计数据,sock显示套接字信息
-q显示运行队列的大小,它与系统当时的平均负载相同
-R显示进程在采样时间内的活动情况
-y显示终端设备在采样时间内的活动情况
-W显示系统交换活动在采样时间诶的状态
-o filename表示将命令结果以二进制格式存放在文件中。
interval表示采样间隔时间
count表示采样次数
3、iostat
iostat
-c显示cpu的使用情况
-d显示磁盘的使用情况
-x device指定要统计的磁盘名称
interval指定两次统计时间间隔
Blk_read/s表示每表读取的数据块数
Blk_wrtn/s表示每表写入的数据块数
如果Blk_wrtn/s值很大,表示磁盘写操作很频繁;Blk_read/s很大表示读频繁,可以考虑将数据放到内存中。
4、free
5、top
6、netstat
原文地址:http://51kxj.blog.51cto.com/3537967/1696781