如何跨多个请求重用HTTP连接

本文关键字:HTTP 连接 请求 何跨多 | 更新日期: 2023-09-27 18:29:44

我正在制作一个应用程序,它可以不断扫描远程网站以查找任何更改。我正在使用System.Net.Http.HttpClient,但我注意到它可能不支持重用连接。

请求一个接一个地执行,但通常需要大约250毫秒才能完成。当我打开Fiddler并打开"重用服务器连接"选项时,它会降低到每个请求150毫秒。

我想我配置错了HttpClient,但在MSDN参考中找不到任何有助于我解决问题的信息。

如何跨多个请求重用HTTP连接

对于HttpWebRequest,您需要设置KeepAlive属性。

HttpClient似乎没有提供类似的属性,但它可能会在默认情况下尝试使用keepalive。请求和响应标头是什么?(HTTP/1.0仅在服务器显式发送Connection: Keep-alive响应标头时支持保活。

连接保持活动在某些主机上不能与System.Net.Http.HttpClient一起工作可能是相关的。