redis会从exists调用返回过期的密钥吗?

ikfrs5lh  于 2021-06-08  发布在  Redis
关注(0)|答案(1)|浏览(356)

我想知道这里是否有人能帮我确认密钥过期在特定用例中是如何工作的。我们的情况是,我们使用redis在消息传递系统中基于用作密钥的唯一标识符对消息进行重复数据消除。我们使用setex来设置ttl,并在过去使用get调用来检查到期时间,但我想知道exists调用而不是get调用是否也能正常工作。我在文档中看到,redis将被动地使密钥过期,“只是当一些客户端试图访问它,并且发现密钥超时时”,这就是为什么我们可以依赖get调用仅在ttl未通过时返回值,但是对于exists调用是否也会发生同样的情况?换句话说,exists调用是否会在密钥超过ttl时被动地使其过期并返回0,或者exists调用是否可能不考虑ttl,而不是被动地使我们调用exists的密钥过期,并且即使密钥的ttl已过期也可能返回1?

s4n0splo

s4n0splo1#

是的,redis应该在exists上被动地终止密钥

相关问题