一.前言
監(jiān)測Linux系統(tǒng)的內存使用情況,使用【free】是最直接的。
查看機器的內存使用信息【/proc/meminfo】
二.分析
1.【free】
我們一起看下面的一個輸出:
free –m 表示以M為單位查看內存使用情況,在這個輸出中,我們重點關注的應該是free列與cached列的輸出值。
由輸出可知,此系統(tǒng)共7.8G內存,系統(tǒng)空閑內存還有621M,其中,Buffer Cache占用了210M,Page Cache占用了4056M,由此可知系統(tǒng)緩存了很多的文件和目錄,而對于應用程序來說,可以使用的內存還有4888M,當然這個4888M包含了Buffer Cache和Page Cache的值。在swap項可以看出,交換分區(qū)還未使用。所以從應用的角度來說,此系統(tǒng)內存資源還非常充足。
一般有這樣一個經驗公式:
應用程序可用內存/系統(tǒng)物理內存>70%時,表示系統(tǒng)內存資源非常充足,不影響系統(tǒng)性能,
應用程序可用內存/系統(tǒng)物理內存20%時,表示系統(tǒng)內存資源緊缺,需要增加系統(tǒng)內存,
20%應用程序可用內存/系統(tǒng)物理內存70%時,表示系統(tǒng)內存資源基本能滿足應用需求,暫時不影響系統(tǒng)性能。
(比如上圖,4888/7869=0.621,所以基本滿足性能)
tips:
watch是一個非常有用的命令,幾乎每個linux發(fā)行版都帶有這個工具,通過watch,可以動態(tài)的監(jiān)控命令的運行結果,省去手動執(zhí)行的麻煩。)
例如:
在【watch】后面跟上需要運行的命令,watch就會自動重復去運行這個命令,默認是2秒鐘執(zhí)行一次,并把執(zhí)行的結果更新在屏幕上。
-n:指定重復執(zhí)行的時間
-d:表示高亮顯示變動。
2.【meminfo】
$cat /proc/meminfo 讀出的內核信息進行解釋