SQS + Lambda

Event Source Mapping で実現される queue batching + Lambda のパターン。

公式: https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html

  • SQS に long polling (20秒)を行う。
  • Lambda は同期呼出
    • 成功すれば、 Delete Message を SQS に送る
  • 最大 10000 record までバッチ化可能
    • FIFO queue ならば 10 record まで

スロットリング時: https://zenn.dev/uma002/articles/7f209ecde14367

  • Visibility Timeout の期間は、バッチ化を担当しているプロセスが lambda に retry を行う
    • SQS 上の Receive Count は、なので 1 Visibility Timeout に対して、 1 だけ増えるが、 throttling に対する retry は何回も行われているかもしれない

---2022/08/13