はじめに 弊社で開発している Lisket では外部APIに大量のリクエストを行っています。このたび、ビジネス的な要請からアプリケーションの要件を変更することになり、それを機に外部APIへの大量リクエストのインフラアーキテクチャもブラッシュアップすることになりました。 要件は以下です。 バッチ処理の主な振舞は外部APIへのリクエスト。 単位時間あたりに要求されるバッチ処理は10,000件を超えることもあるし数件のこともある。 外部APIは単位時間あたりのリクエスト数に上限を設けている。よってその範囲内でリクエスト数をコントロールしたい。 最大件数が増加しても6時間以内くらいでは終わってほしい。 バッチ処理の所要時間については、ほとんどが2,3秒で終わる。稀に数分かかることもある。 バッチ処理は互いにステートレス。順番や依存はない。 AWS Batchでやってみる AWS Batch とはそ