Linux

我可以安全地為 memcached 分配多少記憶體?

  • November 13, 2014

我正在研究在我們的伺服器上使用 memcached。我們剛剛升級,現在有一個相當強大的盒子:

DELL PowerEdge R710 Linux
RHEL 5 - 64bit
12GB RAM

(我們曾經在一個 32 位 4GB 的盒子上)。

問題是我對 Linux 實際使用記憶體的方式以及它如何轉化為我的 munin 圖感到困惑。

所以從我的圖表來看(或者我可以在控制台中使用一個方便的命令嗎?)我可以安全地為 memcached 分配多少 RAM。即我有多少記憶體?

編輯: 圖形圖像託管已過期,因此通過圖像託管站點刪除廣告。

好吧,您幾乎一直擁有超過 8G 的免費(黃色,“未使用”)或記憶體(深藍色)。在我看來,你為 memcached 分配的上限可能是 6GB(給予或接受),這仍然會為其他程序和一些磁碟記憶體留出相當大的空間,而不會存在真正的交換風險。也有人會爭辯說你可以分配更多。這是一個品味問題,真正的性能優勢將取決於您的具體應用。

請記住,如果您告訴 memcached 最多使用 6GB 記憶體,除非您在其中儲存 6G,否則它不會使用那麼多。如果你只儲存 1GB,它只會消耗 1GB,即使限制是 6GB。我建議您將 memcached 添加到您的監控中,並密切關注 memcached 的bytes統計數據並相應地限制記憶體使用量,以確保在使用者意外激增時系統不會做任何意外。

在 shell 中,您可以使用free它來確定記憶體使用情況,它會顯示如下資訊:

            total       used       free     shared    buffers     cached
Mem:       4060096    3775976     284120          0     270828    1899720
-/+ buffers/cache:    1605428    2454668
Swap:       577528          0     577528

Free 是未使用的記憶體,cached 是磁碟記憶體。隨著時間的推移,空閒記憶體將被用作磁碟記憶體,因此將用作記憶體的記憶體視為空閒記憶體是非常安全的,即使它目前正在用於一些有用的事情。

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