Я столкнулся с этой проблемой с 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 означает неограниченный срок жизни. Но при дальнейших исследованиях, а также проб и ошибок все, что меньше или равно 0, немедленно теряет силу. Итак, мой вопрос действительно в том, почему срок действия некоторых ключей не истекает даже при установленном ttl?