1

我正在使用 System.Net.Http.HttpClient 的单个实例将请求从 Windows 服务发送到多个 RESTful API。

我遇到了一个奇怪的问题,其中一些 HTTP 请求或多或少有规律地超时。我每隔45 到 60 分钟就会在某个地方出现很多超时。

这是此类超时的频率。

错误频率

这是我创建 HttpClient 的方法,

        ServicePointManager.DefaultConnectionLimit = 100;
        _client = new HttpClient(new HttpClientHandler
        {
          UseProxy = false,
          Proxy = null
        });
        _client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

一些请求超时后,DefaultConnectinoLimit 增加了。应该进一步增加还是有一个我可以使用的最佳值?

还有其他可能导致此问题的原因吗?

非常感谢您对此的任何想法或建议。

注意:我正在运行 100 个线程并在这些线程上使用 SendAsync 调用。

4

0 回答 0