vmstat 命令

vmstat是一個查看虛擬內存使用情況的工具,它能夠看到服務器使用率,內存使用,虛擬內存交換狀況,IO讀寫.相比top,能夠看到整個機器的CPU,memory,IO的使用狀況,而不是單單看到各個進程各值的使用率.web

默認狀況下,vmstat命令並無安裝,須要安裝sysstat包,該包裏含有vmstat程序.緩存

通常常用的該命令後加2個數字參數,第一個參數是採樣的時間間隔(秒),第二個參數是採樣的次數.服務器

1
2
3
4
5
6
7
8
9
10
11
12
13
root @192 .168. 22.54 :~# vmstat 2 10
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
13  0      0 542604 323512 12356052    0    0     0     2    0    0 17 18 65  0  0 
42  0      0 552500 323512 12356112    0    0     0     0 18669 49903 42 45 14  0  0   
72  0      0 563416 323512 12356132    0    0     0     0 18394 49895 41 43 16  0  0   
73  0      0 570924 323512 12356164    0    0     0     0 19666 51678 37 41 22  0  0   
13  0      0 581208 323512 12356204    0    0     0   280 18990 49541 43 43 15  0  0   
18  0      0 587148 323512 12356228    0    0     0    32 19360 49203 37 39 24  0  0   
27  0      0 520016 323512 12356292    0    0     0     0 20423 52865 39 40 21  0  0   
18  0      0 527512 323512 12356336    0    0     0     0 19613 53052 42 43 16  0  0   
23  0      0 538608 323512 12356376    0    0     0     0 18860 50645 41 42 18  0  0   
80  0      0 548608 323512 12356444    0    0     0     0 19781 50917 41 42 17  0  0   

根據以上實例,下面是字段說明:函數

Procs(進程)工具

r:表示運行隊列的進程數量,換句話說就是多少個進程真正分配到cpu.服務器配置cpu爲8核,這裏因爲服務器運行了大量的程序在跑,當這個值超過了cpu數目,且id較小,就可能會出現cpu瓶頸.運行隊列過大,表示cpu很繁忙,通常會形成cpu使用率太高.spa

b:等待io的進程數..net

Memory線程

swpd:虛擬內存使用狀況,單位KBcode

free:空閒的內存orm

buff:用做緩衝的內存大小,內存中的一部分,某程序代碼緩存,不可移到swap裏去.

cache:用做緩存的內存大小,數據緩存,容許交給swap

Swap

si:從磁盤交換到內存的交換頁數量,每秒從磁盤讀入虛擬內存的大小,若是這個值大於0,表示物理內存不夠用或者內存泄露.

so:從內存交換到磁盤的交換頁數量,每秒虛擬內存寫入磁盤的大小,若是這個值大於0,表示物理內存不夠用或者內存泄露.

bi:Blocks received from a block device (blocks/s).每秒從塊設備接收到的塊數,即讀塊設備。

bo:Blocks sent to a block device (blocks/s).每秒發送到塊設備的塊數,即寫塊設備。

System

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

cs:每秒上下文切換數.這個值越小越好.好比每次調用系統函數,線程的切換,代碼就會進入內核空間,致使上下文切換,次數過多表示cpu大部分浪費在上下文切換,致使cpu沒有充分利用.

CPU(以百分比表示)

us:用戶進程執行的時間,用戶cpu使用率,操做運算等.

sy:系統進程執行的時間,系統cpu使用率,讀取硬盤,操做硬件等.

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

wa:等待IO時間

相關文章
相關標籤/搜索