10月06, 2016

memcache的删除机制

除了delete操作,key时间到期的主动设置外,memcache中的key还可能因为过期失效而被动删除。

主动设置删除

memcache中,用expire或delete的key并不会马上删除,而是会等到下一次get时再删除,这是惰性删除机制,避免了要时刻轮询监控到期的key。

被动删除

当memcache内存空间占满时,会使用LRU的方式删除活跃性较低的key。在很多内存管理的场景我们都会见到LRU算法。

关于LRU算法

假设memcache中所有的key都在一个队列中,当我们操作这个key时(删除除外),key就提权到队列的队首,其他的都遵循先入先出的原则。当一个key一段时间没有被使用并且队列不断的增加成员时,这个key就会在队尾被弹出。

本文链接:http://www.qiana.info/post/memcache_delete.html

-- EOF --

Comments