[英]Redis Cache expiration
我在使用 ioredis 时遇到了这个问题,我在其中创建了一个密钥并为该密钥设置了到期时间。 我的代码看起来像这样
let temp1 = acct.limit;
let txn = array.length;
let cache = new ioredis(); // note that this is not the exact code snippet
let ttl = txn / temp1;
cache.set('key', true, Math.ceil(ttl));
我遇到的问题是有时ttl
是正数,有时是负数。 因此,导致人们相信 -1 可能是无限的 ttl。 但在进一步研究和反复试验后,任何小于或等于 0 的东西都会立即过期。 所以我的问题是,为什么有些密钥即使设置了 ttl 也不会过期?
Redis EXPIRE 键的设置时间为 ttl 秒。 因此,任何小于或等于 0 的 ttl 值都会立即使密钥过期。 这个问题不清楚,因为您已经解释过小于或等于 0 的任何值都会使密钥立即过期。
TTL
命令返回三种类型的响应;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.