swap in (si) == 0,swap out (so) == 0
應用程序可用內存/系統物理內存 <= 70%
vmstat
$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 3 252696 2432 268 7148 3604 2368 3608 2372 288 288 0 0 21 78 1
0 2 253484 2216 228 7104 5368 2976 5372 3036 930 519 0 0 0 100 0
0 1 259252 2616 128 6148 19784 18712 19784 18712 3821 1853 0 1 3 95 1
1 2 260008 2188 144 6824 11824 2584 12664 2584 1347 1174 14 0 0 86 0
2 1 262140 2964 128 5852 24912 17304 24952 17304 4737 2341 86 10 0 0 4
重要參數:
swpd,已使用的 SWAP 空間大小,KB 為單位。
free,可用的物理內存大小,KB 為單位。
buff,物理內存用來緩存讀寫操作的buffer大小,KB 為單位。
cache,物理內存用來緩存進程地址空間的 cache 大小,KB 為單位。
si,數據從 SWAP 讀取到 RAM(swap in)的大小,KB 為單位;
so,數據從 RAM 寫到 SWAP(swap out)的大小,KB 為單位。
上例可得:
物理可用內存 free 基本沒什麼顯著變化,swapd逐步增加,說明最小可用的內存始終保持在 256MB(物理內存大小) * 10% = 2.56MB 左右,當髒頁達到10%的時候就開始大量使用swap。
free
$ free -m
total used free shared buffers cached
Mem: 8111 7185 926 0 243 6299
-/+ buffers/cache: 643 7468
Swap: 8189 0 8189