Lambda批处理来自多个队列的SQS消息

Lambda batch processing of SQS messages from multiple queues

我有一个 lambda 设置,其中事件源配置了 5 个不同的 SQS 队列。现在,如果 lambda 的批量大小配置为 10,lambda 处理程序中 SQSEvent 中的 10 条记录是否来自同一队列,或者批量中的 10 条记录是否来自 5 个队列中的任何一个?

该行为未记录在案,但几乎可以肯定的是,Lambda 服务将从一个且仅在单个 Lambda 调用中排队的事件进行批处理。

也就是说,如果能够区分一个队列源与另一个队列源对您的应用程序至关重要,那么:

  1. 为每个队列创建一个 Lambda 处理程序(它可以简单地调用您的通用处理程序函数,并指示哪个队列是源),或者
  2. 查看事件中每条记录中eventSourceARN的值