AbortError:就绪检查失败:Redis连接丢失,命令中止。它可能已被处理

时间:2017-04-06 16:34:38

标签: node.js redis

此错误消息的含义是什么?可能的原因是什么?我使用节点6.10.0和redis 2.7.1。我在单独的Docker容器中运行Redis存储,并且容器已成功构建。之后,我在商店中使用我的应用程序中需要的访问令牌。我是用脚本做的,那时我收到错误信息。

2 个答案:

答案 0 :(得分:0)

由于断开的连接(您的软件以某种方式失去了与Redis服务器的连接)的结果而出现错误。 它可以是以下两种情况之一(或两者皆有)-连接超时或重新连接尝试超过配置中指定的最大数目。

答案 1 :(得分:0)

对我来说,问题是redis配置中缺少“ bind”指令,因此,redis在“保护模式”下工作。 Node.js客户端没有显示完整的响应,因此,我仅在从标准redis-cli连接到redis时才发现了问题的原因:

DENIED Redis在保护模式下运行,因为保护模式为 启用,未指定绑定地址,未输入验证密码 向客户要求。在此模式下,仅接受来自 回送接口。如果要从外部计算机连接 Redis,您可以采用以下解决方案之一:1)只需禁用 保护模式,从发送命令“ CONFIG SET protected-mode no” 通过从同一主机连接到Redis的环回接口 服务器正在运行,但是请确保Redis无法公开访问 从互联网(如果您这样做)。使用CONFIG REWRITE进行此更改 常驻。 2)或者,您可以通过以下方式禁用保护模式: 编辑Redis配置文件,并设置保护模式 选项设置为“否”,然后重新启动服务器。 3)如果您开始 手动进行服务器测试,请使用 '--protected-mode no'选项。 4)设置绑定地址或 验证密码。注意:您只需要执行上述操作之一 以便服务器开始接受来自 外面。