【发布时间】:2015-05-01 00:07:35
【问题描述】:
当 Async/Await 发出 http 请求时(例如使用 HttpClient),是否默认内置任何限制?
this 之类的问题暗示将打开无限数量的连接。我的应用在循环中执行一批 http 请求,似乎限制在大约 50 个 TCP 连接。
我最初担心我需要添加 SemaphoreSlim 来进行节流,但 .NET 似乎为我这样做了。
任何人都可以对此有所了解吗?
【问题讨论】:
-
每台服务器限制为 2 个连接。您是否连接到相同的服务器?
-
是的,在这种情况下,我在批量加载场景中反复访问同一个端点。我知道 Web 浏览器传统上具有这 2 个连接限制,但 .NET 也强制执行它?它是如何工作的?
-
Yes.
标签: c# async-await