【问题标题】:Trigger AWS Lambda after SQS has received message from SNS在 SQS 收到来自 SNS 的消息后触发 AWS Lambda
【发布时间】:2018-05-10 15:03:48
【问题描述】:

我面临的问题是,在作为 SNS 订阅者的 SQS 队列中写入消息后如何触发 Lambda 函数。

我知道有this 有用的帖子,但我还没有真正理解在成功发送第一条消息(关于主题A)之后如何发布第二条消息(关于主题B)。我不知道这是否是正确的答案。

下面是我要实现的链接的图表

如您所见,有一个 API 可以发布到 SNS 主题。该主题的订阅者应该是:

  1. 存储消息的 SQS 队列
  2. 必须由 SNS 触发才能使用写入队列的消息的 Lambda 函数。

我面临的问题是如何确保在队列中写入消息后执行 lambda 以及如何真正实现解决方案。 如何发布两个主题,一个在 SQS 中写入消息,另一个触发队列(如何确定消息已有效写入队列?)。

非常感谢你们, 希望我说得够清楚。

【问题讨论】:

  • 谁能帮帮我?
  • 这种架构的原因是什么? IE。消息发送到队列后会发生什么?您的 Lambda 函数将事件发布到 SQS 对您来说是一种替代方案吗?在这种情况下,您会知道事件何时发送到 SQS。
  • 问题是SQS无法触发Lambda函数,所以我希望SNS先顺序写入SQS然后触发Lambda函数
  • 好的。您可能会阅读this tutorial,它提出了一种使用 Lambda 函数读取新 SQS 条目的解决方案。

标签: amazon-web-services lambda aws-lambda amazon-sqs amazon-sns


【解决方案1】:

将 lambda 作为订阅者添加到主题。一旦向主题发布消息,就会触发 lambda。如果您有一个 SQS 队列作为该主题的订阅者,那么该消息也将在那里排队..

【讨论】:

    猜你喜欢
    • 2017-09-17
    • 1970-01-01
    • 2020-07-17
    • 2021-09-30
    • 2021-10-18
    • 2021-12-01
    • 2022-01-06
    • 2021-12-07
    • 2020-05-28
    相关资源
    最近更新 更多