【问题标题】:What Does Memcached's LRU Actually Mean?Memcached 的 LRU 究竟是什么意思?
【发布时间】:2010-06-23 20:01:30
【问题描述】:

Memcached 说它使用 LRU 队列来执行驱逐(混合了一些基于块大小的规则。)当他们说最近最少使用时,他们指的是最近最少存储还是最近最少读取?他们的文档在这里似乎模棱两可。

【问题讨论】:

    标签: memcached lru


    【解决方案1】:

    在我所看到的任何地方,LRU 都指的是最后一次访问(读取或写入),而不是最后一次存储。

    This article 确认:

    LRU 算法确保 被移除的对象是 要么不再使用,要么 很久以前使用过,它的数据是 可能过时或很少 价值。

    它继续谈论正在“积极使用”的项目 - 这对我来说强烈暗示它是访问而不是存储......除非你已经完成一半,否则你不会谈论“积极存储”的东西实际写出来。

    【讨论】:

    • LRU 算法会更愿意删除一段时间未使用的条目或过期的条目吗?即将到期的条目不会在那个确切时刻被删除,而是在下次有人尝试访问它时(AFAIR)。那么 LRU 算法(也)会考虑密钥的到期吗?
    • @zaphod1984:这完全取决于实现。如果您特别询问 memcached,我不知道。
    猜你喜欢
    • 1970-01-01
    • 2011-03-12
    • 2014-10-29
    • 2016-01-27
    • 2014-12-05
    • 1970-01-01
    • 1970-01-01
    • 2021-11-19
    相关资源
    最近更新 更多