カスタム ハンドラー

完了

Azure Functions には、さまざまな言語ランタイムがあります。 使用する言語が既定で提供されていない場合は、カスタム ハンドラーを使用できます。

カスタム ハンドラーとは

基本的には、カスタム ハンドラーは Web サーバーです。 この Web サーバーは Functions ホストからイベントを受け取ります。 そのため、そのイベントに応答するために、好みの言語でコードを記述することができます。

カスタム ハンドラーを使用すると、HTTP プリミティブをサポートする任意の言語を使用できます。 これはほぼすべての言語です。

重要な概念とフロー

Azure Functions には、理解しておく必要がある 3 つの中心的な概念があります。

  • トリガー。 トリガーとは、関数の実行を開始するイベントです。 一般的なトリガーの例としては、HTTP 要求、新しいキュー メッセージ、データベースへの変更などがあります。 適切なトリガーを選択することは、関数の実行方法を決定する上で重要です。
  • バインディング。 バインディングは、関数を別のクラウド サービスに接続するヘルパー コードです。 入力バインディングと出力バインディングの両方を使用して、関数との間でデータを受け渡すことができます。
  • Functions ホスト。 Functions ホストはアプリケーション イベント フローを制御します。 イベントをキャプチャしたホストはハンドラーを呼び出し、関数の応答を返します。

開始から終了までのフローは次のようになります。

Diagram that shows an overview of custom handlers.

以下のアクションは、Functions ホストとカスタム ハンドラーを通じて要求がどのように処理されるかを記述したものです。

  1. トリガーと一致するイベント (HTTP 要求など) が発生すると、要求は Functions ホストに送信されます。
  2. Functions ホストは要求ペイロードを作成し、それを Web サーバー (カスタム ハンドラー) に送信します。 ペイロードには、トリガー、入力バインディング データ、およびその他のメタデータに関する情報が含まれています。
  3. 関数はロジックを実行し、応答が Functions ホストに返されます。
  4. Functions ホストは、出力データを処理のために関数の出力バインディングに渡します。