ioredis: how expire key with callback

var Redis        = require('ioredis');
redis = new Redis();

var key = 'expire_test';
var content ='content'
var timeout = 10;

redis.multi()
.set(key, content)
.expire(key, timeout, function(){
  console.log('out');
})
.exec(function(err) {
  if(err) {
    console.error("Failed to publish EXPIRE EVENT for " + content);
    console.error(err);
    return;
  }
});

like this?

.expire(key, timeout, function(){
  console.log('out');
})

About this issue

  • Original URL
  • State: closed
  • Created 9 years ago
  • Comments: 16 (6 by maintainers)

Most upvoted comments

这个没法实现到期提醒,只能实现删除提醒。比如 expire 一个键 100 秒过期,Redis 不会恰好在第一百秒删除这个键,而是在下一次访问这个键或者后台垃圾回收时才会真正删除它

Hey guys, can you explain what’s the final behaviour?

redis.set(key, content, 'EX', timeout, function (err, res) {
 is this execute right when the key is EXPIRED?
});