效能分析命令:vmstat

sayWhat_sayHello發表於2018-11-08

使用

Usage:
 vmstat [options] [delay [count]]
 
 delay代表每過多少秒顯示一條,count代表要顯示的總條數

Options:
 -a, --active           active/inactive memory
 -f, --forks            number of forks since boot
 -m, --slabs            slabinfo
 -n, --one-header       do not redisplay header
 -s, --stats            event counter statistics
 -d, --disk             disk statistics
 -D, --disk-sum         summarize disk statistics
 -p, --partition <dev>  partition specific statistics
 -S, --unit <char>      define display unit
 -w, --wide             wide output
 -t, --timestamp        show timestamp

 -h, --help     display this help and exit
 -V, --version  output version information and exit

示例

[root@VM_0_6_centos ~]# vmstat 
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 3  0      0  78184  77832 552156    0    0    17    36   10    2 82  1 17  0  0
 
 
[root@VM_0_6_centos ~]# vmstat 1 3
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 3  0      0  71556  76812 558964    0    0    17    36    0    2 82  1 18  0  0
 0  0      0  73704  76816 558900    0    0     0    92  476  699  1  2 96  1  0
 0  0      0  73704  76816 558904    0    0     0     0  428  588  1  0 99  0  0

解釋

   Procs
       r: The number of runnable processes (running or waiting for run time).可執行的程式的個數
       b: The number of processes in uninterruptible sleep.非中斷狀態睡眠的程式的個數,意味著阻塞程式的個數

   Memory
       swpd: the amount of virtual memory used. 已經使用的記憶體量
       free: the amount of idle memory. 剩餘的記憶體量
       buff: the amount of memory used as buffers. 已經使用緩衝塊的大小
       cache: the amount of memory used as cache. 已經使用快取的大小
       inact: the amount of inactive memory.  (-a option) 非活躍狀態下的記憶體容量
       active: the amount of active memory.  (-a option) 活躍狀態下的記憶體容量

   Swap
       si: Amount of memory swapped in from disk (/s). 從磁碟交換到swap虛擬記憶體的交換頁數量,單位:KB/秒。如果這個值大於0,表示實體記憶體不夠用或者記憶體洩露了
       so: Amount of memory swapped to disk (/s).
       從swap虛擬記憶體交換到磁碟的交換頁數量,單位:KB/秒,如果這個值大於0,表示實體記憶體不夠用或者記憶體洩露了

   IO
       bi: Blocks received from a block device (blocks/s).每秒從塊裝置接收到的塊數,單位:塊/秒 也就是讀塊裝置。

       bo: Blocks sent to a block device (blocks/s).每秒傳送到塊裝置的塊數,單位:塊/秒  也就是寫塊裝置。

   System
       in: The number of interrupts per second, including the clock. 每秒中斷的次數包括時間片中斷
       cs: The number of context switches per second.每秒上下文交換的次數

   CPU
       These are percentages of total CPU time.
       us: Time spent running non-kernel code.  (user time, including nice time)
       使用者CPU時間(非核心程式佔用時間)(單位為百分比)。 us的值比較高時,說明使用者程式消耗的CPU時間多
       sy: Time spent running kernel code.  (system time)
       系統使用的CPU時間(單位為百分比)。sy的值高時,說明系統核心消耗的CPU資源多,這並不是良性表現,我們應該檢查原因。
       id: Time spent idle.  Prior to Linux 2.5.41, this includes IO-wait time.
       空閒的CPU的時間(百分比),在Linux 2.5.41之前,這部分包含IO等待時間。
       wa: Time spent waiting for IO.  Prior to Linux 2.5.41, included in idle.
       等待IO的CPU時間,在Linux 2.5.41之前,這個值為0 .這個指標意味著CPU在等待硬碟讀寫操作的時間,用百分比表示。wait越大則機器io效能就越差。說明IO等待比較嚴重,這可能由於磁碟大量作隨機訪問造成,也有可能磁碟出現瓶頸(塊操作)
       st: Time stolen from a virtual machine.  Prior to Linux 2.6.11, unknown.

參考文獻

https://www.cnblogs.com/feng0815/p/8613547.html

相關文章