如何在节点redis客户端上设置读取超时?

时间:2015-09-03 17:54:43

标签: node.js redis node-redis

在github上,我没有看到读取超时的选项,https://github.com/NodeRedis/node_redis

connect_timeout,但这是为了建立连接,而不是读/写。

2 个答案:

答案 0 :(得分:1)

如果您真的想要某个特定方法的超时值(在您的情况下为 GET),您可以尝试其他答案中提到的技巧,但如果您的问题是因为该方法只是挂起而不是在无法连接时抛出异常到服务器,您可以将 enable_offline_queue 设置为 false。这将使所有 Redis 命令立即抛出异常,以便您可以继续执行剩余的代码,而不是等待当前命令超时(Node Redis 的默认值为 60 分钟,它会持续重试连接 1 小时)。

请记住,当 enable_offline_queue 设置为 false 时,您在服务器出现连接问题时发出的命令将永远不会执行。

答案 1 :(得分:0)

没有内置选项,但您可以使用超时处理程序包装您的调用。 请参阅问题here和关联的答案要点here