3
(首先,我的英語不是很好,請)memcached中的延遲過期機制如何操作?
正如我們所知,memcached的提供懶惰到期,以及「取代」在其樓板LRU的數據,但我不是很清楚它是如何做到這一點。例如,如果一塊板坯已滿,但該板坯中的某些數據已過期,那麼將數據添加到板坯時會發生什麼情況?
- 是否memcached的發現一些過期的數據,並與添加的數據替換它們,或
- 它更換LRU數據,或
- 它做點別的?
據我所知,懶惰到期是這樣的memcached是不是主動地從每個切片刪除過期數據,但是當到期的項的關鍵是參考,而不是隻刪除過期條目。這是浪費資源,不是嗎?
如果slab滿了一些過期的數據,但這些過期的數據沒有請求,那麼它將使用LRU mechinism替換緩存中最少使用的項目。我對嗎? – 2011-05-13 10:24:19
是的,你說得對 – 2011-05-13 11:34:22