2011-11-04 28 views
7

我使用清漆 -s的malloc,1G」清漆緩存滿時會發生什麼?

這是目前98%滿。一旦完全充滿會怎麼樣呢?

有了它清除?

也許清除舊圖像/網頁?

或者更好的清除文件與命中最少的?

回答

10

它看起來像漆採用LRU(最近最少使用)的策略時,CA從緩存中刪除項目che變得充滿了其TTL(生存時間)未到期的事物(因此首先移除其TTL已過期的事物,如果緩存仍然充滿,則移除最近最少訪問的事物)。

https://www.varnish-cache.org/trac/wiki/ArchitectureLRU

注意你可以看n_lru_nuked櫃檯看看在哪些東西被從緩存刷新由於LRU率。

+0

我有很多物體的命中率很低(約0.5)。我使用IPB論壇軟件和(http://community.invisionpower.com/topic/328398-unbelievable-results-with-varnish/),並根據建議的vcls提供最佳命中率。在這種情況下,如果我將緩存降至512MB,這會使我的命中率最差? – Hayden

+0

@hydn:緩存越小,命中率越低......直到某一點。可以這麼想......如果你的緩存和你的數據庫一樣大,你將有100%的命中率(第一次讀取新的/更新的記錄除外)。如果您的緩存爲0MB,則您的命中率將爲0%......緩存中沒有空間,因此總是進入數據庫。通常有一個「甜蜜點」,一定量的RAM會讓你說80%的命中率,並且你必須爲每一個額外的百分比添加不成比例的RAM。另一方面,如果你有UNUSED RAM,不妨將它用於緩存。 –