【问题标题】:Sending messages in bulk using SQS private endpoint使用 SQS 私有端点批量发送消息
【发布时间】:2021-01-24 22:49:22
【问题描述】:

我正在使用 nodejs,我需要使用 sendMessageBatch 函数将批量消息发送到 SQS 队列。将消息推送到 SQS 的 lambda 在 VPC 内部,因此我需要使用 SQS 的私有端点。 任何人都可以帮助了解如何包含端点的语法。 我可以使用这个例子来推动: https://stackoverflow.com/a/60047048/7649369 但是,这没有使用私有端点。

const splitArray = require("split-array");

async function sendMessages(queueUrl, messages) {
  const spilttedArray = splitArray(messages, 10);
  for (const arr of spilttedArray) {
    var params = {
      QueueUrl: queueUrl,
      Entries: []
    };
    for (const message of arr) {
      params.Entries.push({
        Id: uuid.v4(),
        MessageBody: JSON.stringify(message)
      });
    }
    await sqs.sendMessageBatch(params).promise();
  }
}

【问题讨论】:

  • 如果已配置 VPC Endpoint,它应该会自动运行。运行 Lambda 函数时会发生什么?

标签: node.js aws-lambda amazon-sqs amazon-vpc endpoint


【解决方案1】:

你试过这个link 吗?您可以将端点作为参数传递给 SQS 客户端。

const sqs = new AWS.SQS({endpoint: 'https://my-vpc-url.com'}) // credentials also
// everything else
await sqs.sendMessageBatch(params).promise();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 2019-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-07
    • 1970-01-01
    相关资源
    最近更新 更多