AWS Lambda
開発者ガイド

AWS Lambda 関数の呼び出し

Lambda 関数を Lambda コンソール、Lambda API、AWS SDK、AWS CLI、AWS ツールキットで直接呼び出すことができます。他のAWS のサービスを設定して関数を呼び出したり、ストリームまたはキューから読み取るように Lambda を設定して関数を呼び出すこともできます。

関数を呼び出す際は、同期的に呼び出すか非同期的に呼び出すかを選択できます。同期呼び出しでは、イベントを処理する関数を待ってレスポンスを返します。非同期呼び出しでは、Lambda は処理のためにイベントをキューに入れ、すぐにレスポンスを返します。非同期呼び出しでは、Lambda によって再試行が行われるため、失敗したイベントがデッドレターキューに送信される場合があります。

ストリームまたはキューから項目を処理するには、イベントソースマッピングを作成することができます。イベントソースマッピングは、Amazon Simple Queue Service キュー、Amazon Kinesis ストリーム、または Amazon DynamoDB ストリームからアイテムを読み取り、バッチで関数に送信する Lambda のリソースです。関数が処理する各イベントには、数百または数千のアイテムを含めることができます。

他の AWS サービスやリソースは、関数を直接呼び出します。たとえば、タイマーで CloudWatch イベント を呼び出して関数を設定することができ、またはオブジェクトが作成されたときに関数 Amazon S3 を呼び出すことができます。各サービスにおいて、関数の呼び出しに使用するメソッド、イベントの構造、および構成方法が異なります。詳細については、「他のサービスで AWS Lambda を使用する」を参照してください。

誰が関数を呼び出すか、どのように呼び出されるかによって、スケーリングの動作や発生する可能性のあるエラーの種類が異なります。関数を同期的に呼び出すと、エラーがレスポンスで返され、再試行できます。非同期的に呼び出したり、イベントソースマッピングを使用したり、別のサービスを構成して関数を呼び出す場合、要件を再試行し、多数のイベントを処理するために関数をスケーリングする方法は異なります。詳細については、「AWS Lambda 関数スケーリング」と「エラー処理と AWS Lambda での自動再試行」を参照してください。