linux性能监控工具

1.uptime
该命令直观的显示了服务器在过去15分钟,5分钟,1分钟内的平均负载
 
2.vmstat
每隔2秒输出vmstat的信息,共输出10次。

类别 procs swap io
 
system cpu
  r:正在运行的进程数目 si: 换入到内存的容量 bi: 读入块数目 in: 中断数目 us:用户
  b:阻塞的进程数目 so: 换出内存的容量 bo: 写到块数目 cs: 上下文切换数目 sy:系统
          id:空闲
          wa:等待io完成的cpu

3.iostat

iostat -xdmt 1  1  每秒输出一次io统计信息,共输出一次。

rrqm/s  wrqm/s r/s  w/s rMB/s  wMB/s avgrp-sz      avgqu-sz await / svctm / %util
每秒这个设备相关的读取/写入请求merge次数 每秒读写次数 每秒读写的容量  平均IO大小/ 平均IO队列长度 等待IO时间/IO服务时间/等待IO占用百分比

备注:若磁盘%util很大,超过90%,则表示磁盘IO到瓶颈了。

4.top

top -d 10 每10秒钟查看下信息。
包含了load信息,系统运行时间信息,cpu信息,进程信息等。
 
重要参数说明:
VIRT:virtual memory usage
虚拟内存:进程使用的虚拟内存总量,单位:kb。VIRT=SWAP+RES
假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量
 
RES: resident memory usage
进程使用的、未被换出的物理内存大小,单位:kb。RES=CODE+DATA
如果申请100m的内存,实际使用10m,它只增长10m,与VIRT相反
 
SHR:shared memory
共享内存大小【共享库】
 
S:进程状态
D= 不可中断的睡眠状态 
R= 运行 
S= 睡眠 
T= 跟踪 / 停止 
Z= 僵尸进程
 
5.free -m
 =====Mem行======
total:内存总量,
used:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用
free:未分配的内存
buffers:系统分配但未被使用的buffers 数量
cached:系统分配但未被使用的cache 数量
 ======buffers/cache行=====
-buffers/cache:Mem行中的used - buffers-cached,实际使用的内存总量
+buffers/cache: free+buffers+cached,这就是系统当前实际可用内存。
 
buffers:主要用来给块设备做的缓冲大小,主要记录文件系统的metadata
cached:用来给文件做缓冲
 
 
6.sar
通过sar命令可以查看服务器的各个硬件的实时运转情况。由于显示的一些参数含义与其它命令类似,这里就不一一详细介绍,只重点介绍
几个参数。
(1)sar -d  显示磁盘实时信息
 
(2)sar -b 查看I/O和传送速率的统计信息
 
(3)sar -u  显示cpu实时信息
 
(4)sar -q 查看平均负载
 
(5)sar -r 查看内存使用情况
 
(6)sar -n DEV 查看网卡流量情况
 
rxpck/s:每秒钟接收的数据包 
txpck/s:每秒钟发送的数据包 
rxbyt/s:每秒钟接收的字节数 
txbyt/s:每秒钟发送的字节数 
rxcmp/s:每秒钟接收的压缩数据包 
txcmp/s:每秒钟发送的压缩数据包 
rxmcst/s:每秒钟接收的多播数据包  
原文地址:https://www.cnblogs.com/cchust/p/3354597.html