NodeJS& Redis的Redis Timeout触发器

时间:2014-09-23 18:19:14

标签: node.js redis timeout

我想制作一个基于群集的NodeJS脚本,该脚本有8个或更多工作者。独立使用的脚本SetTimeout和定时器存储在NodeJS脚本内部。现在我必须对此做一些事情,我想也许我可以使用redis到期并以某种方式在密钥到期时从redis调用函数?

有人能告诉我一个小例子吗?还有一个问题:这有多可靠?

1 个答案:

答案 0 :(得分:0)

如果您使用的是Redis 2.8.0+,则有keyspace notifications。这些使用Redis中现有的pubsub机制,因此您只需订阅这些不同的通知。

您确实需要确保启用这些通知,因为默认情况下它们已被禁用。您可以通过更改永久解决方案的redis.conf配置文件来执行此操作,也可以通过Redis CLI临时启用它CONFIG SET notify-keyspace-events EKx。您也可以使用以下内容从redis模块启用它:

client.config('set', 'notify-keyspace-events', 'EKx', function(err) {
  if (err) throw err;
});