一次使用单独的 Lambda 处理 AWS SQS 消息

Tob*_*dae 2 amazon-sqs amazon-web-services aws-lambda

就像标题所暗示的那样,我有一个想探索但不知道如何去做的场景。

我有一个 lambda 函数processCSVFile。我还有一个 SQS 队列,在每天的固定时间,它会填充来自 S3 的 csv 文件链接,比如说大约 2000 条消息。现在,一旦 SQS 队列有消息,我想一次处理 25 条消息。

我正在寻找的场景是同时处理 25 条消息,我希望这 25 条消息分别由 25 个 lambda 调用处理。我以为我可以SendMessageBatch在 SQS 中使用函数,但这只会将消息传递到队列,它似乎不适用于我的用例。

我的问题是,我是否能够执行上述操作,如果可能,哪些文档或用例可以解释我正在寻找的内容。另外,如果这个用例是不可能的,你有什么推荐的替代方法来完成我想要同时完成的处理。

Joh*_*ein 6

要使用 25 个并发 Lambda 函数处理来自 Amazon SQS 的 25 条消息(每个运行的 Lambda 函数 1 条消息),您需要:

  • 一个最大的并发配置的lambda函数的25(否则可能当更多的消息,请去比这更高)
  • 甲批量大小上拉姆达触发器配置的1,使得仅SQS它传递一个消息在一个时间

看: