vmstat 命令

 

1.用法算法

vmstat [-a] [-n] [-S unit] [delay [ count]]優化

vmstat [-s] [-n] [-S unit]spa

vmstat [-m] [-n] [delay [ count]]進程

vmstat [-d] [-n] [delay [ count]]內存

vmstat [-p disk partition] [-n] [delay [ count]]ci

vmstat [-f]資源

vmstat [-V]it

-a:顯示活躍和非活躍內存io

-f:顯示從系統啓動至今的fork數量 。table

-m:顯示slabinfo

-n:只在開始時顯示一次各字段名稱。

-s:顯示內存相關統計信息及多種系統活動數量。

delay:刷新時間間隔。若是不指定,只顯示一條結果。

count:刷新次數。若是不指定刷新次數,但指定了刷新時間間隔,這時刷新次數爲無窮。

-d:顯示磁盤相關統計信息。

-p:顯示指定磁盤分區統計信息

-S:使用指定單位顯示。參數有 k 、K 、m 、M ,分別表明1000、102四、1000000、1048576字節(byte)。默認單位爲K(1024 bytes)

-V:顯示vmstat版本信息。

 

2.字段含義說明:

類別

項目

含義

說明

Procs(進程)

r

等待執行的任務數

展現了正在執行和等待cpu資源的任務個數。當這個值超過了cpu個數,就會出現cpu瓶頸。

B

等待IO的進程數量

 

Memory(內存)

swpd

正在使用虛擬的內存大小,單位k

 

free

空閒內存大小

 

buff

已用的buff大小,對塊設備的讀寫進行緩衝

 

cache

已用的cache大小,文件系統的cache

 

inact

非活躍內存大小,即被標明可回收的內存,區別於free和active

具體含義見:概念補充(當使用-a選項時顯示)

active

活躍的內存大小

具體含義見:概念補充(當使用-a選項時顯示)

Swap

si

每秒從交換區寫入內存的大小(單位:kb/s)

 

so

每秒從內存寫到交換區的大小

 

IO

bi

每秒讀取的塊數(讀磁盤)

如今的Linux版本塊的大小爲1024bytes

bo

每秒寫入的塊數(寫磁盤)

 

system

in

每秒中斷數,包括時鐘中斷

這兩個值越大,會看到由內核消耗的cpu時間會越多

cs

每秒上下文切換數

CPU(以百分比表示)

Us

用戶進程執行消耗cpu時間(user time)

us的值比較高時,說明用戶進程消耗的cpu時間多,可是若是長期超過50%的使用,那麼咱們就該考慮優化程序算法或其餘措施了

Sy

系統進程消耗cpu時間(system time)

sys的值太高時,說明系統內核消耗的cpu資源多,這個不是良性的表現,咱們應該檢查緣由。

Id

空閒時間(包括IO等待時間)

 

wa

等待IO時間

Wa太高時,說明io等待比較嚴重,這多是因爲磁盤大量隨機訪問形成的,也有多是磁盤的帶寬出現瓶頸。

 

相關文章
相關標籤/搜索