カスタム ハンドラー
Azure Functions には、さまざまな言語ランタイムがあります。 使用する言語が既定で提供されていない場合は、カスタム ハンドラーを使用できます。
カスタム ハンドラーとは
基本的には、カスタム ハンドラーは Web サーバーです。 この Web サーバーは Functions ホストからイベントを受け取ります。 そのため、そのイベントに応答するために、好みの言語でコードを記述することができます。
カスタム ハンドラーを使用すると、HTTP プリミティブをサポートする任意の言語を使用できます。 これはほぼすべての言語です。
重要な概念とフロー
Azure Functions には、理解しておく必要がある 3 つの中心的な概念があります。
- トリガー。 トリガーとは、関数の実行を開始するイベントです。 一般的なトリガーの例としては、HTTP 要求、新しいキュー メッセージ、データベースへの変更などがあります。 適切なトリガーを選択することは、関数の実行方法を決定する上で重要です。
- バインディング。 バインディングは、関数を別のクラウド サービスに接続するヘルパー コードです。 入力バインディングと出力バインディングの両方を使用して、関数との間でデータを受け渡すことができます。
- Functions ホスト。 Functions ホストはアプリケーション イベント フローを制御します。 イベントをキャプチャしたホストはハンドラーを呼び出し、関数の応答を返します。
開始から終了までのフローは次のようになります。
以下のアクションは、Functions ホストとカスタム ハンドラーを通じて要求がどのように処理されるかを記述したものです。
- トリガーと一致するイベント (HTTP 要求など) が発生すると、要求は Functions ホストに送信されます。
- Functions ホストは要求ペイロードを作成し、それを Web サーバー (カスタム ハンドラー) に送信します。 ペイロードには、トリガー、入力バインディング データ、およびその他のメタデータに関する情報が含まれています。
- 関数はロジックを実行し、応答が Functions ホストに返されます。
- Functions ホストは、出力データを処理のために関数の出力バインディングに渡します。