aix記憶體管理實踐
最近,領導看到一臺aix的主機記憶體利用率99.9%,頗為震驚,讓我查查。在此記錄。
一、檢查主機資源的概況
命令:topas
這裡看到計算空間的記憶體只佔用了54%,沒有使用到分頁paging space。所以初步斷定沒有記憶體的瓶頸問題。
命令:svmon -G
看到記憶體的分片是4K,有7330個分片空閒,那麼空閒記憶體是7330*4K = 28M
當然也可以看svmon -P檢視每個程序的記憶體佔用情況。
因為為了提高 I/O 效能,如果應用程式或核心沒有明確請求的話,AIX會用盡可能多的空閒記憶體進行檔案快取。
二、檢視記憶體管理
命令:vmstat
這裡kthr表示kernel thread其中的r表示在一個cpu時間片中的執行緒數。b表示阻塞(等待)這裡都是0,表示程序情況良好。
memory記憶體狀態:avm是active virtual pages實際使用的記憶體 2833902*4k = 11069M;該記憶體和total的20G記憶體顯然不是99.9%的關係。
paging space還是沒有使用。
faults的值略微高,in表示device interrupts, sy表示system call,cs表示kernel thread context switches.
cpu利用情況:m 沒有wait
命令:nmon,進入nmon後輸入m
最後在filesystemcache看到了99.9%的問題,系統因為IO頻繁,系統將記憶體作為了檔案的快取,檔案系統實際佔用了44.8%的記憶體,造成了記憶體使用率99.9%。
參考文章:http://www.ibm.com/developerworks/cn/aix/library/au-memory_issue/
轉載於:https://blog.51cto.com/bestlanzi/1786921