API Gateway(HTTP API)で受けた注文リクエストを Step Functions でオーケストレーションし、複数の Lambda で処理して結果を S3 に保存する。
このラボでは、サーバーを 1 台も立てずに、注文 (order) を受け付けて検証・加工し、結果を S3 に保存するサーバーレスワークフローを構築します。入口は API Gateway の HTTP API、処理の制御は AWS Step Functions の Express ワークフロー、実際の処理は 3 つの Lambda 関数、出力先は Amazon S3 です。
リクエストの流れは「API Gateway(POST /orders)→ Step Functions が同期実行(StartSyncExecution)→ ValidateOrder(入力検証)→ EnrichOrder(金額計算・タイムスタンプ付与)→ SaveOrder(S3 へ保存)」となります。各 Lambda の出力が次の Lambda の入力へと受け渡されていく様子を、手を動かして理解します。
s3:PutObject)だけを付与できるoutput フィールドに文字列化された JSON として入っていることを理解するcloud_user ロールでサインイン済みであること。