次の方法で共有


AZF0002: 非効率的な HttpClient の使用

このルールは、[FunctionName]-decorated メソッド内で HttpClient がインスタンス化されるときにトリガーされます。

ルール ID AZF0002
カテゴリ [信頼性]
重大度 警告

規則の説明

HTTP 要求を行うために HttpClient を簡単な使用方法で使用すると、ソケットの枯渇に対する脆弱性などのいくつかの問題が発生します。 関数アプリでは、関数メソッドの本体で HttpClient コンストラクターを呼び出すと、すべての関数呼び出しで新しいインスタンスが作成され、これらの問題が増幅します。 従量課金ホスティング プランで実行されているアプリの場合、非効率的な HttpClient 使用方法だと、プランの送信接続の制限が使い尽くされる可能性があります。

推奨されるベスト プラクティスは、アプリケーションの性質に応じて、依存関係の注入または単一の静的 HttpClient インスタンスと一緒に [IHttpClientFactory] を使用することです。

違反の修正方法

ルールを抑制する状況

このルールは抑制しないでください。

次の手順

Azure Functions での接続管理のベスト プラクティスの詳細については、「Azure Functions での接続の管理」を参照してください。

HttpClient の動作の問題と管理の詳細については、「IHttpClientFactory を使用して回復力の高い HTTP 要求を実装する」を参照してください。