C# と VB.NET の質問掲示板
ASP.NET、C++/CLI、Java 何でもどうぞ
C# と VB.NET の入門サイト
掲示板トップ
C# と VB.NET のサンプル
新規作成
利用方法/規約
ツリー表示
トピック表示
ランキング
記事検索
過去ログ
■103738
/ 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
貴重な情報ありがとうございます。
参考にさせて頂きます。
編集キー/
編集
前の記事
(元になった記事)
次の記事
(この記事の返信)
←Re[1]: HttpClientにおいて、エラー発生
/WebSurfer
→Re[3]: HttpClientにおいて、エラー発生
/kiku
上記関連ツリー
HttpClientにおいて、エラー発生
/ kiku
(25/06/18(Wed) 19:13)
#103735
├
Re[1]: HttpClientにおいて、エラー発生
/ kiku
(25/06/19(Thu) 10:00)
#103737
解決済み
│└
Re[2]: HttpClientにおいて、エラー発生
/ KOZ
(25/06/24(Tue) 01:09)
#103741
解決済み
└
Re[1]: HttpClientにおいて、エラー発生
/ WebSurfer
(25/06/19(Thu) 09:57)
#103736
└
HttpClientにおいて、エラー発生
/ kiku
(25/06/19(Thu) 10:06)
#103738
←Now
└
Re[3]: HttpClientにおいて、エラー発生
/ kiku
(25/06/20(Fri) 18:23)
#103740
解決済み
└
Re[4]: HttpClientにおいて、エラー発生
/ kiku
(25/09/18(Thu) 14:50)
#103859
解決済み
上記ツリーを一括表示
/
上記ツリーをトピック表示
上記の記事へ返信
入力内容にタグは利用できません。
他人を中傷する記事は管理者の判断で予告無く削除されます。
半角カナは使用しないでください。文字化けの原因になります。
名前、コメントは必須記入項目です。記入漏れはエラーになります。
入力内容の一部は、次回投稿時の手間を省くためブラウザに記録されます。
URL は自動的にリンクされます。
記事中に No*** のように書くとその記事にリンクされます(No は半角英字/*** は半角数字)。
名前
(*必須)
E-Mail (任意)
Web サイト (任意)
投稿モード
通常モード
図表モード (ソースコードを貼る場合はこちらを使用)
本文
(質問の場合は、開発環境・使用言語のバージョンなどを最初に書いてください)
■No103738 (kiku さん) に返信 > ■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 > 貴重な情報ありがとうございます。 > 参考にさせて頂きます。 >
編集キー
自分の投稿を編集する時に必要です
(半角8文字以内)
解決済み
/
解決したらチェックしておきましょう。
プレビュー/
管理者用
-
Child Tree
-