Node.js sqs sendmessage上的Lambda超时
我正在从lambda函数向队列发送消息。但有时 sqs.sendMessage不返回任何内容,lambda获取超时。这种情况有时会发生 我尝试过多次更改de代码,以使用等待、承诺和回调,但错误仍然存在Node.js sqs sendmessage上的Lambda超时,node.js,aws-lambda,amazon-sqs,Node.js,Aws Lambda,Amazon Sqs,我正在从lambda函数向队列发送消息。但有时 sqs.sendMessage不返回任何内容,lambda获取超时。这种情况有时会发生 我尝试过多次更改de代码,以使用等待、承诺和回调,但错误仍然存在 Lambda函数中配置的内存大小是多少?代码看起来不错,你好,128mb。在CloudWatch日志中,最昂贵的使用是80mb。问题可能在于它。配置的内存越多,代码运行的机器的配置就越好。例如,在1792MB时,您可以获得一个专用的内核。将其增加到1024MB并对其进行测试。现在我的lambda
Lambda函数中配置的内存大小是多少?代码看起来不错,你好,128mb。在CloudWatch日志中,最昂贵的使用是80mb。问题可能在于它。配置的内存越多,代码运行的机器的配置就越好。例如,在1792MB时,您可以获得一个专用的内核。将其增加到1024MB并对其进行测试。现在我的lambda没有超时,但它还有5秒才能完成。第二个参数是:在与服务器建立连接失败后,将套接字设置为超时。所以问题是与服务器的连接。@hansmosh我很好奇你的lambda是否连接了VPC?
const sqs = new aws.SQS({apiVersion: '2012-11-05'});
//TODO: Validar campos obrigatórios nas mensagens de acordo com o tipo de mensagem
exports.sendMessage = async (message) => {
let params = {
MessageBody: JSON.stringify(message),
QueueUrl: 'https://sqs.us-east-1.amazonaws.com/....',
};
try {
await sqs.sendMessage(params).promise();
return {statusCode: 200, body: {data: "Notification sent successfully"}};
} catch (e) {
return {statusCode: 400, body: {data: e}};
}
}