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

时间:2014-11-07 11:20:46

标签: c# http fiddler dotnet-httpclient

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

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

我想我的配置错误HttpClient,但我在MSDN参考资料中找不到任何可以帮助我解决问题的信息。

1 个答案:

答案 0 :(得分:1)

对于HttpWebRequest,您需要设置KeepAlive property

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

Connection keep-alive not working with System.Net.Http.HttpClient on certain hosts可能是相关的。