C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■103738 / )  Re[2]: HttpClientにおいて、エラー発生
□投稿者/ kiku (480回)-(2025/06/19(Thu) 10:06:09)
No103736 (WebSurfer さん) に返信
> ■No103735 (kiku さん) に返信

> なので、それを避けるため、HttpClient のインスタンスはシングルトンにしてア
> プリで使いまわすということを行っているのでないかと想像しています。
はい。シングルトンにしています。

> ただし、そうすると socket の枯渇の問題は解決できても、DNS の変更が反映され
> ないという別の問題があるそうです。
なるほど、確か以前調査して、そのような問題があることを
見聞きしたことを思い出しました。

> ASP.NET など長時間実行されるプロセスで HttpClient の共有インスタンスを使用
> する場合に、socket の枯渇と DNS の問題に対応するために、IHttpClientFactory
> を使用するという方法があります。
>
> IHttpClientFactory を使用して回復性のある HTTP 要求を実装する
> https://learn.microsoft.com/ja-jp/dotnet/architecture/microservices/implement-resilient-applications/use-httpclientfactory-to-implement-resilient-http-requests
>
> Windows Forms アプリで DI を使って IHttpClientFactory を inject して使う
> サンプルは以下の記事にありますので、興味があれば見てください。
>
> Windows Forms で IHttpClientFactory 利用 (CORE)
> https://surferonwww.info/blogengine/post/2021/03/12/how-to-use-ihttpclientfactory-in-windows-forms-application.aspx
>
> 上のサンプルのターゲットフレームワークは .NET 5.0 ですが、DI に使われて
> いる Microsoft.Extensions.DependencyInjection 名前空間にあるクラス類は
> .NET Framework でもバージョン 4.6.1 以降であれば利用できます。実装例は
> 以下の記事を見てください。
>
> .NET Framework での Dependency Injection
> https://surferonwww.info/blogengine/post/2023/04/13/dependency-injection-for-dotnet-framework-48-applicationaspx.aspx
貴重な情報ありがとうございます。
参考にさせて頂きます。

返信 編集キー/


管理者用

- Child Tree -