IHttpClientFactory
HttpClientの生成と、その裏側にあるハンドラー(接続プール)のプール管理・定期的な入れ替えをDIコンテナー経由で行う.NETの仕組み。
- 概念URI
https://comcomponent.com/knowledge/ihttpclientfactory/
- 別名・表記
- AddHttpClient
- 最終確認日
- 2026-08-01
- 機械可読データ
- JSON-LD
この概念が関わる関係
- IHttpClientFactoryはソケット枯渇を軽減します。CreateClientのたびにクライアントは使い捨てでも、裏側のハンドラー(接続プールの実体)は共有され続けるため、リクエストごとにHttpClientを生成・破棄することによるソケット枯渇は起きない。ただし同時接続数そのものが多すぎる場合の枯渇まで防げるわけではない。 / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- IHttpClientFactoryはstatic HttpClientのDNS変更への非追従を防ぎます。CreateClientで都度クライアントを取得する使い方に限り、ハンドラーが既定2分ごとに入れ替わり、そのタイミングで接続が作り直されDNSが再解決されるためDNS変更に追従する。取得したクライアントをシングルトンとして保持し続けると入れ替えが働かず追従しない。 / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
- IHttpClientFactoryは.NET Frameworkに対する本記事の推奨です。.NET Frameworkでは、Microsoft.Extensions.Httpパッケージ経由でIHttpClientFactoryを導入することが公式に推奨されている。 / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- IHttpClientFactoryはMicrosoft.Extensions.Http.Resilience 標準ハンドラーを利用します。AddHttpClientが返すビルダーにAddStandardResilienceHandlerを明示的に追加した場合、リトライ・サーキットブレーカー・タイムアウトの標準セットを導入できる。 / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
- IHttpClientFactoryはCookieContainerの意図しない共有の原因になることがあります。ハンドラーがプールされる結果、CookieContainerが複数のCreateClient呼び出し間で意図せず共有される。 / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
この概念を扱う記事
一次資料
このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。