api gatewayは同期、非同期処理どちらをサポートしているのか?
AWS API Gatewayは、基本的には同期的な処理を主にサポートしています。
クライアントがリクエストを送信すると、API Gatewayはバックエンド(Lambda関数、HTTPエンドポイント、AWSサービスなど)にそのリクエストを転送し、
バックエンドのレスポンスを待ってクライアントに返します。この一連の流れは同期的に行われます。
ただし、API GatewayがバックエンドとしてAWS Lambdaを使用する場面では、非同期実行も可能です。
AWS Lambda関数を非同期で呼び出すためには、特定のヘッダー(X-Amz-Invocation-Type: Event
)をリクエストに付加することで非同期処理を行うことができます。この場合、Lambda関数はバックグラウンドで実行され、API Gatewayはすぐに応答を返します。
もう一つの方法として、API Gateway自体を非同期のワークフロー(AWS Step Functionsなど)に組み込むこともあります。
これにより、API Gatewayは単にトリガーとなり、実際の処理は非同期に行われる場合があります。
要するに、API Gatewayは基本的には同期的な処理に使われることが多いですが、非同期的な処理も柔軟にサポートしています。