【问题标题】:Get the last time a given Redis key was accessed获取最后一次访问给定 Redis 密钥的时间
【发布时间】:2014-12-02 10:44:45
【问题描述】:

我想查看我的 redis 服务器上特定密钥的最近访问时间。

我知道这个信息是为每个 key 存储的,因为它在 redis 的 LRU 算法中用于消除旧的 key。

有没有一种简单的方法可以查看给定键的这些信息?

【问题讨论】:

标签: caching redis key lru


【解决方案1】:

您可以为此目的使用OBJECT IDLETIME 命令。它返回自访问密钥以来的秒数,但如果您需要时间,只需从 now() 中减去回复。

【讨论】:

  • 太棒了。谢谢。
  • 但这不会给出纪元...也无法将上次写入与上次读取分开...
  • 不错,远非理想,但就是这样
【解决方案2】:

Itamar Haber 的答案绝对是最好的,但我相信还有其他方法。

您可以使用DEBUG OBJECT 命令,尽管顾名思义,它是一个调试命令,不应该(真的)使用。它的输出为您提供 LRU。

请记住,它绝对不应该在生产中使用,而是作为帮助您了解正在发生的事情的工具。

【讨论】:

  • 非常正确。另请记住,在维护良好的生产环境中,通常会阻止 DEBUG(尽管很可能也禁止 OBJECT ;))。
  • @ItamarHaber 为什么 OBJECT 会在维护良好的生产系统中被阻止?
猜你喜欢
  • 2014-06-18
  • 2020-10-13
  • 2014-09-12
  • 2013-01-01
  • 2013-01-01
  • 2020-12-14
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
相关资源
最近更新 更多