效能監控之linux vmstat命令

來源:互聯網
上載者:User

在Linux下有很多系統效能分析工具,比較常見的有top、free、ps、time、timex、uptime等。下文將介

紹vmstat的使用。

用vmstat監視記憶體使用量情況
  vmstat是Virtual Meomory Statistics(虛擬記憶體統計)的縮寫,可對作業系統的虛擬記憶體、進程、

CPU活動進行監視。它是對系統的整體情況進行統計,不足之處是無法對某個進程進行深入分析。
  vmstat的文法如下:

  vmstat [-V] [-n] [delay [count]]
  其中,-V表示列印出版本資訊;-n表示在周期性迴圈輸出時,輸出的頭部資訊僅顯示一次;delay

是兩次輸出之間的延遲時間;count是指按照這個時間間隔統計的次數。對於vmstat輸出各欄位的含義,

可運行man vmstat查看

oracle@oracle [/home/oracle] vmstat 30        

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  7 191060  46436   8516 6320140    0    0 25145  3988 2953 2568  7  2 45 47  0
 0  8 191060  46772   8944 6262940    0    0 18306  4123 2762  821  6  2 42 50  0
 0  8 191060  46048   9476 6214968    0    0 16523  5260 2444 3257  7  2 39 52  0
 0  8 191060  45504  10584 6260116    3    0 14665  5954 2553 2630  5  5 40 49  0
 0  7 191060  80140  11088 6280616    0    0 20427  2419 2942  612  4  2 55 39  0
 1  6 191060  46632  10948 6305656    0    0 17997  4201 1295  430  4  3 60 33  0
 1  8 191060  45676  10240 6191764    7    0 29717   888 1258 1532  5  6 58 31  0
 0  9 191060  45600   8608 6180256    0    0 24880  2717 1220 1470  3  1 56 40  0
 0 10 191060  44984   9056 6169620    0    0 24803  1591 1224 1480  3  1 51 44  0
 0  9 191060  46476   9816 6165352    0    0 20735  2587 1186 1154  3  1 50 46  0
 0  8 191060  46524  11084 6011804    9    0 15602  5370 1223 1671  5  2 46 47  0

PS: 30秒寫一次,沒有限制,如果有限制列印5次:  vmstat 30 5

Procs
r: 等待啟動並執行進程數   
b: 處在非中斷睡眠狀態的進程數      (等待IO進程數)
w: 被交換出去的可啟動並執行進程數。
此數由 linux 計算得出,但 linux 並不耗盡交換空間
准測
r,b≈0

Memory
swpd: 虛擬記憶體使用方式,單位:KB   (切換到交換記憶體上得記憶體)
      如果swpd的值不為0,或者還比較大,但是SI,SO的值長期為0,這種情況不必擔心影響系統效能
free: 閒置記憶體,單位KB      (閒置實體記憶體)
buff: 被用來做為緩衝的記憶體數,單位:KB    (作為buffercache的記憶體,對塊裝置的讀寫進行緩衝)
cache: 作為page cache的記憶體,檔案系統的cache
      如果cache的值大的時候,說明cache出得檔案數多,如果頻繁訪問到的檔案都被cache到,那麼磁

盤的讀IO bi會非常小。

Swap
si: 從磁碟交換到記憶體的交換頁數量,單位:KB/秒  
so: 從記憶體交換到磁碟的交換頁數量,單位:KB/秒  
    記憶體夠用的時候這兩個值都是0,如果這兩個值長期大於0,系統效能會受到影響,磁碟的IO和CPU資

源都會唄消耗
    如果free很少,但是si so也很少(大多數時候為0),不用擔心效能受到影響。

IO
bi: 發送到塊裝置的塊數,單位:塊/秒          (讀磁碟)
bo: 從塊裝置接收到的塊數,單位:塊/秒        (寫磁碟)
    這兩個值越大,能看到CPU在IO等待的值也會越大。

System
in: 每秒的中斷數,包括時鐘中斷
cs: 每秒的環境(上下文)切換次數
    這兩個值越大,會看到由核心消耗的CPU時間會越大。

CPU
按 CPU 的總使用百分比來顯示
us: CPU 使用時間
sy: CPU 系統使用時間
id: 閑置時間
wa: IO等待消耗的CPU時間百分比

通常情況下 sy所佔用的時間百分比小於10%,否則就需要檢查系統消耗CPU情況,
在單使用者下最理想的狀態是使cpu處於100%工作狀態,
如果在多使用者環境中us+sys》80,進程就會在運行隊列中花費等待時間,回應時間和輸送量就會下降。
wa值高時,說明IO等待比較嚴重,可能由於磁碟大量隨機訪問,也有可能磁碟出現瓶頸(塊操作)
wa>40表明磁碟io沒有也許存在不合理的平衡,或者對磁碟操作比較頻繁。
us持續大於50,服務高峰期可以接受。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.