国际惯例,我们要知道什么是服务器的内存,内存有哪些作用。这里就不做过多介绍,Linux性能监控需要我们对底层要有一定的理解。下面我将会列出我常用的监控内存的工具。
vmstat
vmstat显示关于进程,内存,页,块I/O,traps和CPU的信息。vmstat既可以展示平均值,也可以是实时数据。通过提供采样频率和采样时间就可以开启vmstat的采样模式。
参数解释:
- 进程
r:等待执行时间的进程数 b:在不可中断睡眠中的进程数
- 内存
swpd:已使用的虚拟内存量 free:空闲内存量 buff:作为缓冲的内存 cache:作缓存的内存
- Swap
si:从交换分区写到内存的量 so:从内存写到交换分区的大小
- IO
bi:发往块设备的数目(blocks/s) bo:从块设备接收的块数目 (blocks/s)
- System
in:每秒钟的中断次数,包括时钟 cs:每秒的上下文切换次数
- CPU(总CPU时间的百分比):
us:运行非内核代码的时间(用户时间,包括nice时间) sy:运行内核代码的时间(系统时间) id:空闲时间,早先的Linux2.5.41版本,包含了I/O等待时间 wa:等待IO的时间,早先的Linux2.5.41版本,这个值为0
free
free命令的常用参数:
- -b,-k,-m,-g 以字节b,千字节kb,兆字节mb和吉字节gb为单位展示。
- -l 显示详细的高低内存统计
- -c 输出free的次数
top 、htop
之前已经介绍过,请点击 18、Linux命令对服务器CPU进行监控
sar
sar命令还是比较万能的。这里就贴个传送门
nmon
第22篇已经介绍 点击 nmon
PerfMon Metrics Collector
第17篇已经介绍,点击 PerfMon Metrics Collector