vmstat命令詳解

轉自:http://blogold.chinaunix.net/u1/55527/showart_1182772.html

[root@localhost ~]# vmstat -n 3       (每個3秒刷新一次)
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
r b   swpd   free   buff cache   si   so    bi    bo   in    cs us sy id wa
1 0    144 186164 105252 2386848    0    0    18   166   83     2 48 21 31 0
2 0    144 189620 105252 2386848    0    0     0   177 1039 1210 34 10 56 0
0 0    144 214324 105252 2386848    0    0     0    10 1071   670 32 5 63 0
0 0    144 202212 105252 2386848    0    0     0   189 1035   558 20 3 77 0
2 0    144 158772 105252 2386848    0    0     0   203 1065 2832 70 14 15 0

vmstat所帶參數請用man vmstat查看

Procs

r: 等待運行的進程數 b: 處在非中斷睡眠狀態的進程數 w: 被交換出去的可運行的進程數。此數由 linux 計算得出,但 linux 並不耗盡交換空間

Memory

swpd: 虛擬內存使用情況,單位:KB

free: 空閒的內存,單位KB

buff: 被用來做爲緩存的內存數,單位:KB

Swap

si: 從磁盤交換到內存的交換頁數量,單位:KB/

so: 從內存交換到磁盤的交換頁數量,單位:KB/

IO

bi: 發送到塊設備的塊數,單位:塊/

bo: 從塊設備接收到的塊數,單位:塊/

System

in: 每秒的中斷數,包括時鐘中斷

cs: 每秒的環境(上下文)切換次數

CPU

CPU 的總使用百分比來顯示

us: CPU 使用時間

sy: CPU 系統使用時間

id: 閒置時間

準測

r<5b≈0
如果fre<MINFREE,將會出現連續不斷的頁面調度,將導致系統性能問題。
對於page列,repipocy維持於比較穩定的狀態,PI率不超過5,如果有pagin發生,那麼關聯頁面必須先進行pageout
在內存相對緊張的環境下pagein會強制對不同的頁面進行steal操作。如果系統正在讀一個大批的永久頁面,你也許可以看到popi

會出現不一致的增長,這種情景並不一定表明系統負載過重,但是有必要對應用程序的數據訪問模式進行見檢查。在穩定的情況下,掃描率和重置率幾乎相等,在
多個進程處理使用不同的頁面的情況下,頁面會更加不穩定和雜亂,這時掃描率可能會比重置率高出。

faults列,insycs會不斷跳躍,這裏沒有明確的限制,唯一的就是這些值最少大於100

cpu列,ussysidwa也是不確定的,最理想的狀態是使cpu處於100%工作狀態,單這隻適合單用戶的情況下。
如果在多用戶環境中ussys80,進程就會在運行隊列中花費等待時間,響應時間和吞吐量就會下降。wa>40表明磁盤io沒有也許存在不合理的平衡,或者對磁盤操作比較頻繁,

vmstat
各項:
procs:
r-->
在運行隊列中等待的進程數
b-->
在等待io的進程數

w-->
可以進入運行隊列但被替換的進程

memoy
swap-->
現時可用的交換內存(k表示)

free-->
空閒的內存(k表示)

pages
re
--》回收的頁面

mf
--》非嚴重錯誤的頁面

pi
--》進入頁面數(k表示)

po
--》出頁面數(k表示)

fr
--》空餘的頁面數(k表示)

de
--》提前讀入的頁面中的未命中數

sr
--》通過時鐘算法掃描的頁面

disk
顯示每秒的磁盤操作。 s表示scsi盤,0表示盤號

fault
顯示每秒的中斷數

in
--》設備中斷

sy
--》系統中斷

cy
--》cpu交換

cpu
表示cpu的使用狀態

cs
--》用戶進程使用的時間

sy
--》系統進程使用的時間

id
--》cpu空閒的時間

如果 r經常大於 4 ,且id經常少於40,表示cpu的負荷很重。

如果pipo 長期不等於0,表示內存不足。

如果disk 經常不等於0, 且在 b中的隊列 大於3, 表示 io性能不好。

Linux在具有高穩定性、可靠性的同時,具有很好的可伸縮性和擴展性,能夠針對不同的應用和硬件環境調整,優化出滿足當前應用需要的最佳性能。因此企業在維護Linux系統、進行系統調優時,瞭解系統性能分析工具是至關重要的。
  在Linux下有很多系統性能分析工具,比較常見的有topfreepstimetimexuptime等。下文將介紹幾個較爲重要的性能分析工具vmstatiostatsar及其使用。

  vmstat監視內存使用情況


  vmstatVirtual Meomory Statistics(虛擬內存統計)的縮寫,可對操作系統的虛擬內存、進程、CPU活動進行監視。它是對系統的整體情況進行統計,不足之處是無法對某個進程進行深入分析。


  vmstat的語法如下:



  vmstat [-V] [-n] [delay [count]]



  其中,-V表示打印出版本信息;-n表示在週期性循環輸出時,輸出的頭部信息僅顯示一次;delay是兩次輸出之間的延遲時間;count是指按照這個時間間隔統計的次數。對於vmstat輸出各字段的含義,可運行man vmstat查看

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章