【问题标题】:Nodejs App Engine Standard env Redis error read ECONNRESETNodejs App Engine 标准环境 Redis 错误读取 ECONNRESET
【发布时间】:2020-07-10 15:05:15
【问题描述】:

我在标准环境中运行我的 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 查询性能和会造成巨大的延迟。

【问题讨论】:

  • 您找到解决此问题的方法了吗?我遇到了同样的问题,这让我发疯了。
  • 不,我没有找到任何解决方案,我什至联系了谷歌云团队,但他们说 Redis 通常有应用引擎问题:(
  • 这太令人失望了——我使用的是 Google 官方产品 Memorystore,它应该没有问题!!

标签: node.js google-app-engine redis


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2018-06-08
    • 2016-09-26
    • 2018-06-13
    • 1970-01-01
    • 1970-01-01
    • 2018-03-12
    • 2018-07-01
    • 1970-01-01
    • 2020-11-16
    相关资源
    最近更新 更多