从过期的密钥中检索值

时间:2019-11-28 23:58:05

标签: redis

我有一个用例,我一直进行汇总,直到TTL在Redis的键/值上达到0为止。据我在文档中所知,检索或后台作业会触发所有过期的密钥,并立即将其删除。

无论如何,我是否可以“终止”该删除操作并在到期时检索其值?或类似的效果?

我的最后一个问题包含我的用例的上下文:Redis - any way to trigger an event when a value is no longer being actively written to?

1 个答案:

答案 0 :(得分:1)

我相信我找到了我问题的答案。每行都有对应的行,约定为expiry:{key}

uniqueEventHash: [value1, value2, value3] // no expiry
expiry:uniqueEventHash: {no value} // set TTL to 60

现在,每当value的新uniqueEventHash到达时,我都会做两件事。我将其附加到uniqueEventHash的{​​{1}}行上,然后我还将append上的TTL重置为60。

当该expiry:uniqueEventHash的事件停止到达时,第二个uniqueEventHash被删除,并且expiry:expiry:uniqueEventHash事件的通知被发送给订户。消息中的密钥已过期,在这种情况下为EXPIRY

然后我可以执行以下操作:

expiry:uniqueEventHash