Cache

Memcached cachesize 512M or 1G for VPS 2G?

  • September 12, 2014

我剛開始memcachedVPS帶有 2Go 的 RAM 上使用。

我將記憶體大小設置為 512 Mb,但我想知道是否可以選擇 1024 Mb。

上面VPS有:

  • 一個連接很少的本地商業網站(最多一天最多 10 個會話,只有匿名使用者),偶爾會有網站管理員更新內容。
  • 獎勵網站不活動(可能會轉移到其他地方);
  • 幾個開發網站我是唯一使用的。
  • 希望我以後可以放置另一個本地商業網站(也許會刪除一些開發網站)。

在啟動 4 個站點(1 個匿名使用者,3 個經過身份驗證的使用者)時觀看 top 命令,我注意到記憶體使用量高達 700Mb,因此最多可用 1.3Gb。我使用阿帕奇。

目前每頁的載入時間在 2 到 3 秒之間,但對於較少使用的站點,第一頁可以載入 5-8 秒。這個想法可能是增加記憶體以擁有更多的索引路徑和頁面。

但我讀到了一些關於交換風險的資訊。所以我想知道為了優化 2 個本地商業網站 + 可能 1 個沙箱和 1 個開發站點的頁面載入,最佳選擇是什麼。

您很可能對 32mb 之類的東西很滿意…

只有使用儲存大量數據的memcache 的非常繁忙的應用程序才能使用更多記憶體……

如果你有繁忙的應用程序,如果多樣性很高,memcached 項目將很快過期。Memcache 記憶體被分成多個片(部分)。每個slab/section獲得你分配給它的總記憶體的第N個記憶體量。特定大小特定大小範圍的數據鍵值對始終儲存在接受該大小範圍內的項目的平板/部分中。話雖如此,您要儲存的特定大小的數據種類繁多,才能比鍵通常過期更快地填充平板/部分,從而使您有理由增加 memcached 記憶體限制。

要更深入地了解記憶體記憶體的使用方式,您可能需要查看 http://dev.mysql.com/doc/mysql-ha-scalability/en/ha-memcached-stats-slabs.html

memcache 的理想設置是在可接受數量的“驅逐”(從記憶體中刪除記錄為新記錄騰出空間)的情況下獲得最小的價值。這可以從一些圖表/趨勢中很好地讀取或手動檢查;有關更多資訊,請查看 http://dev.mysql.com/doc/mysql-ha-scalability/en/ha-memcached-stats-items.html

如果您的應用程序是用 PHP 編寫的並且您想要更好的性能;您可能需要考慮使用一些 PHP 操作碼記憶體器,例如 APC、OPcache 或 Xcache,具體取決於您的 PHP 版本。

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