无法在 SQS FIFO 上触发 lambda

Can't trigger lambda's on SQS FIFO

我正在尝试触发 lambda 执行以执行 FIFO 队列中的项目。除了轮询之外,我们还有什么选择可以做到这一点?我们刚刚了解到,我们不能直接从 FIFO 队列触发 lambda 执行,目前只有标准队列支持。 我还了解到我们不能将 SNS 主题订阅到 FIFO 队列——这也只在标准队列上受支持。

在 Amazon 发布更新之前,是否有人找到解决此问题的方法?

此处唯一的选择是按特定时间间隔轮询队列。

您可以创建一个 CloudWatch event trigger 来调用 lambda 函数(比如说每 10 分钟一次),该函数轮询队列并进行处理。

更新

现在可以了。现在可以将 SQS FIFO 队列指定为 Lambda 函数的事件源。

https://aws.amazon.com/blogs/compute/new-for-aws-lambda-sqs-fifo-as-an-event-source/

SQS 事件源除了通过长轮询每秒拉取队列外什么都不做。

如果你想要一切都井井有条; - 每秒创建一个 Cloudwatch 事件触发器(如 Asdfg 所建议的那样) - 将并发限制设置为 1 - 通过长轮询接收消息以降低成本

致昨天对 AWS Now Supports Lambda Triggers from FIFO SQS 感兴趣的任何人。感谢@JohnRotenstein 指出这一点。