Memory-Usage

為什麼空閒伺服器上的 RAM 使用率如此之高?

  • November 1, 2013

我正在研究用於科學數據分析的伺服器。它執行 RHEL 6.4 它有將近 200GB 的 RAM。對於通過 SSH 的使用者來說,它的執行速度非常慢,經過一番摸索後,我很快注意到 RAM 的使用率非常高。奇怪的是,即使處於空閒狀態,它仍在使用大量 RAM:

在此處輸入圖像描述

我還查看了通過htop,我看不到任何正在執行的程序正在使用超過 0.1% 的 RAM。所以我想知道發生了什麼事?現在唯一執行的使用者啟動程序是兩個 NFS 掛載共享之間的 rsync。

我嘗試重新啟動伺服器,幾分鐘後它的響應速度更快,但隨後記憶體使用量再次飆升。

有什麼辦法可以查明為什麼記憶體使用率如此之高?

它很高,因為這樣可以節省精力。釋放記憶體需要付出努力。如果你這樣做,只需努力讓它再次使用。因此,為了省力,現代作業系統只有在別無選擇的情況下才會釋放記憶體。

如果您在想“我現在想要釋放記憶體,以便以後可以使用它”,請從您的腦海中消除這種想法。記憶體不必現在是空閒的,以後可以使用它。它可以現在使用,可以以後使用。所以這裡沒有痛苦的權衡。使用記憶體是一個純粹的勝利。

無論您的問題是什麼,都不是高記憶體使用率。這是系統正常執行的標誌。

引用自:https://serverfault.com/questions/550182