首页 > 解决方案 > AWS SQS 套接字挂断间歇性错误

问题描述

尝试从我的 lambda 中的 SQS 队列接收消息时,我有时会不断收到此错误

2019-07-19T13:10:17.371Z    03b1cea1-0266-45b0-9b54-1fbe561e148a    ERROR   { Error: socket hang up
at createHangUpError (_http_client.js:323:15)
at TLSSocket.socketOnEnd (_http_client.js:426:23)
at TLSSocket.emit (events.js:194:15)
at TLSSocket.EventEmitter.emit (domain.js:441:20)
at endReadableNT (_stream_readable.js:1125:12)
at process._tickCallback (internal/process/next_tick.js:63:19) code: 'ECONNRESET' }

这是我的代码

const sqs = new AWS.SQS({apiVersion: '2012-11-05'});

module.exports.processEvent = thundra((event, context, callback) => {

      let params = {
        QueueUrl: queueUrl,
        MaxNumberOfMessages : 10
      };

      sqs.receiveMessage(params).promise().then(res => {
        if(res.Messages) {
          return Promise.all(res.Messages.map(doWork));
        }
      })
      .catch(err => console.log(err, err.stack))
      .then(() => context.succeed())
      .catch(err => context.fail(err, err.stack));
    });

知道发生了什么吗?

这是我已经尝试过的几件事

到目前为止没有任何帮助。同样重要的是要知道这个错误有时只会发生。不是每次。

标签: node.jsaws-lambdaamazon-sqs

解决方案


推荐阅读