HealthChecks icon indicating copy to clipboard operation
HealthChecks copied to clipboard

UrlChecker can exhaust sockets

Open synercoder opened this issue 8 years ago • 0 comments

In the current implementation of the UrlChecker for every check a new HttpClient is created. This can cause problems.

On MSDN it is stated under the remarks section:

HttpClient is intended to be instantiated once and re-used throughout the life of an application. Instantiating an HttpClient class for every request will exhaust the number of sockets available under heavy loads. This will result in SocketException errors.

Also more information about this issue can be found here: https://aspnetmonsters.com/2016/08/2016-08-27-httpclientwrong/

I will try to create a minimal verifiable test project to demonstrate the problem soon, as well as perhaps a pull request to fix it. I am currently at work and don't have the time to do that now.

synercoder avatar Jul 19 '17 11:07 synercoder