【问题标题】:Does HttpWebRequest's limit of 2 connections per host apply to HttpClient?HttpWebRequest 对每个主机 2 个连接的限制是否适用于 HttpClient?
【发布时间】:2012-05-01 20:31:35
【问题描述】:

是否有人知道,每个主机 2 个连接的(默认)速率限制是否适用于 System.Net.Http.HttpClient。

请说明您的信息来源以及此限制是否可以像this 那样增加,或者是否有更好/更简单的方法来做到这一点。

另外,有限制器实现吗?例如每分钟最多 40 个调用?

有一篇关于使用 Reactive Extensions here 的节流策略的好文章,但我想知道是否有 HttpClient 方法来做到这一点。

【问题讨论】:

    标签: c# httpwebrequest dotnet-httpclient


    【解决方案1】:

    根据documentation(见备注第三段),HttpClient默认使用HttpWebRequest。而HttpWebRequest 确实有每个主机的两个并发连接限制。

    HttpClient 没有说明HttpClientHandler(默认值)是否更改了HttpWebRequest 中的任何默认值。我怀疑不是。

    如果您想更改它,您必须创建自己的 HttpMessageHandler 并将引用传递给 HttpClient 构造函数。

    【讨论】:

    • 快速查看HttpMessageHandler,但无法设置MaxConnections。我想Reflection 在这里会有所帮助...
    猜你喜欢
    • 2016-08-18
    • 1970-01-01
    • 1970-01-01
    • 2011-10-03
    • 1970-01-01
    • 2015-03-28
    • 2014-05-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多