vmstat n m 時間間隔為n秒,採集m組資料
vmstat n 時間間隔為n秒
# vmstat 2 3 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 252 99272 148444 614268 0 0 0 9 4 2 0 0 99 0 0 0 0 252 99264 148444 614288 0 0 0 0 61 101 0 0 100 0 0 0 0 252 98780 148444 614288 0 0 0 0 89 195 1 1 97 0 0
===proces===
r:表示執行佇列(就是說多少個程式真的分配到CPU)
b:表示阻塞的程式
*分析
(1)r:當這個值超過了CPU數目,就會出現CPU瓶頸;如果執行佇列過大,表示你的CPU很繁忙,一般會造成CPU使用率很高
===memory記憶體使用率===
swpd:虛擬記憶體已使用的大小
free:空閒的實體記憶體大小
buff:目錄佔用的快取大小
cache:檔案佔用的快取大小
*分析
(1)swpd:這個值如果大於0,表示你的機器實體記憶體不足了,如果不是程式記憶體洩露的原因,那麼你該升級記憶體了或者把耗記憶體的任務遷移到其他機器
===swap虛擬記憶體交換情況===
si:每秒從磁碟讀入虛擬記憶體的大小
so:每秒虛擬記憶體寫入磁碟的大小
*分析
(1)si:如果這個值大於0,表示實體記憶體不夠用或者記憶體洩露了,要查詢耗記憶體程式解決掉
(2)so:如果這個值大於0,同上
===IO讀寫情況===
bi:塊裝置每秒接收的塊數量,這裡的塊裝置是指系統上所有的磁碟和其他塊裝置,預設塊大小是1024byte
in:每秒CPU的中斷次數,包括時間中斷
cs:每秒上下文切換次數
===cpu使用率===
us:使用者cpu時間
sy:系統cpu時間
id:空閒cpu時間
wa:等待io的cpu時間