【问题标题】:How to trigger Lambda function using SNS based on SQS Queue如何使用基于 SQS Queue 的 SNS 触发 Lambda 函数
【发布时间】:2017-05-01 00:33:49
【问题描述】:

我正在使用 Lambda 函数将消息推送到 SQS 队列。将消息放入 SQS 队列后,我需要触发其他 Lambda 函数来处理队列中的消息。

我认为我们可以使用 SNS 来实现这一点。我是 AWS 服务的新手,请提出解决方案,在 SNS 的帮助下基于 SQS 队列消息触发 Lambda 函数。

【问题讨论】:

  • 您可以省略 SNS 步骤 - cloudonaut.io/…
  • 感谢您的回复@Vlad 我正在寻找实时队列处理。您建议的方法将适用于实时处理。

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


【解决方案1】:

您不需要中间的 SNS 层。 从你的第一个 Lambda 开始做 2 件事

  1. 在 SQS 中放置消息并
  2. 触发将处理事件的 Lambda

出于好奇,为什么需要将消息发送到 SQS。如果您的处理很简单,那么您可以直接在您的第一个 lambda 函数本身中处理该消息。

这样可以节省 SQS 以及其他 Lambda 的成本

【讨论】:

【解决方案2】:

我认为这将取决于处理消息的紧迫性。如果您想实时处理所有消息,请将它们发送到 SNS 并为您的 Lambda 订阅该主题。

另一种情况是,您正在实时处理您的消息,并且由于某些依赖性而经常发生任何故障,然后在这种情况下将其发送到 SQS 并稍后通过 Lambda 轮询进行处理。

Lambdas 触发在所有这些情况下都非常灵活,您可以直接将您的 lambda 订阅到 SNS 主题以进行处理,也可以安排您的 lambda 在 cron 基础上运行它(在轮询和处理 SQS 消息的情况下很有用)

【讨论】:

  • 你能解释一下我们如何使用SNS来处理sqs队列消息
猜你喜欢
  • 2020-05-09
  • 1970-01-01
  • 1970-01-01
  • 2020-01-21
  • 2020-10-15
  • 2017-07-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多