我在标准环境上运行Nodejs应用,每隔4分钟我的Redis连接会抛出错误,然后再次连接,
错误是这样的-

"{ Error: Redis connection to xx.xxx.x.x:6379 failed - read ECONNRESET at TCP.onStreamRead (internal/stream_base_commons.js:111:27) errno: 'ECONNRESET', code: 'ECONNRESET', syscall: 'read' }"
但是,当我在计算引擎中或在灵活的环境中运行我的应用程序相同的Redis和节点版本时,在两个环境中我都没有收到此错误。
我在许多网站上都看到了解决方案,在这些网站上它们为Redis创建错误处理程序,然后使nodeJs应用程序免于崩溃,但问题是为什么首先发生此错误,如果此问题持续存在,那么我认为它将影响我的Redis查询性能并会造成巨大的延误。

最佳答案

我不确定您是否为应用程序或Cloud Memorystore使用外部Redis实例。这些ECONNRESET错误仅在联系端点时中断连接时发生。我建议检查到达端点时redis实例日志中发生了什么。可能是调用Redis的过程结束得太早了,如果是这种情况,则需要将redis.conf中的超时设置设置为0以外的值。

关于node.js - Nodejs App Engine标准env Redis错误读取为ECONNRESET,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/62837109/

10-15 09:57
查看更多