如何在Redis中找到最旧物品的年代?
Memcached提供了max\u age,但无法为Redis找到类似的功能。是因为Redis不支持这种元数据吗?不幸的是,Redis中没有最大年龄功能,除非您为每个键设置了TTL。不幸的是,Redis中没有最大年龄功能,除非您为每个键设置了TTL。Redis不保存键的年龄。如果在所有关键点上设置了固定的TTL,则可以对一些关键点进行采样,通过查看它们的TTL可以知道它们的年龄(因为所有对象都具有相同的TTL)。通过这种方式,您可以统计估计最旧的关键点 Redis不会保存钥匙的使用年限。如果在所有关键点上设置了固定的TTL,则可以对一些关键点进行采样,通过查看它们的TTL可以知道它们的年龄(因为所有对象都具有相同的TTL)。通过这种方式,您可以统计估计最旧的关键点 为每个键设置TTL将如何给出最旧的键的年龄?理论上,您可以在每个键上循环并检查每个键的TTL。我承认,这很难。为每个键设置TTL将如何给出最老的键的年龄?理论上,您可以在每个键上循环并检查每个键的TTL。很难,我承认…它会给出最老的钥匙,但不会给出最老钥匙的年龄。我的使用案例是每天刷新缓存,我计划使用max_age进行健全性检查,即缓存中没有前一天的内容。也许,我可以使用EXPIREAT命令,即清除日期边界上的键,或者设置TTL=日期边界-当前时间。@Amit它将为您提供最早的键的估计年龄。年龄始终为如何在Redis中找到最旧物品的年代?,redis,Redis,Memcached提供了max\u age,但无法为Redis找到类似的功能。是因为Redis不支持这种元数据吗?不幸的是,Redis中没有最大年龄功能,除非您为每个键设置了TTL。不幸的是,Redis中没有最大年龄功能,除非您为每个键设置了TTL。Redis不保存键的年龄。如果在所有关键点上设置了固定的TTL,则可以对一些关键点进行采样,通过查看它们的TTL可以知道它们的年龄(因为所有对象都具有相同的TTL)。通过这种方式,您可以统计估计最旧的关键点 Redis不会保存钥匙的使用年限。如果在所
$GLOBAL\u TTL-$OBJECT\u TTL
,即80000秒前创建了一个具有6400秒TTL的对象。不管怎么说,听起来你只是在寻找LRU和过期,redis没有保存年龄就这样做了。redis没有全局ttl。然而,当ttl工作时,设置day_边界(我们可以假设为全局ttl)-当前时间,只是在应用程序中这样做很慢(python代码)。它将给出最旧的密钥,但不会给出最旧密钥的年龄。我的使用案例是每天刷新缓存,我计划使用max_age进行健全性检查,即缓存中没有前一天的内容。也许,我可以使用EXPIREAT命令,即清除日期边界上的键,或者设置TTL=日期边界-当前时间。@Amit它将为您提供最早的键的估计年龄。年龄始终为$GLOBAL\u TTL-$OBJECT\u TTL
,即80000秒前创建了一个具有6400秒TTL的对象。不管怎么说,听起来你只是在寻找LRU和过期,redis没有保存年龄就这样做了。redis没有全局ttl。然而,当ttl工作时,设置day_边界(我们可以假设为全局ttl)是当前时间,只是在应用程序中这样做很慢(python代码)。