消除 Windows 7 对并发 TCP 连接数(http 网络请求)的限制

消除 Windows 7 对并发 TCP 连接数(http 网络请求)的限制

我有一个应用程序尝试打开尽可能多的 http 请求(为了对代理实现进行压力测试)

我觉得 Win7 (SP1) 可能对同时打开的连接数有限制(如果我没记错的话,可能是所谓的半开状态)。我能为客户端做些什么吗?而且我还使用充当代理服务器的 Vista PC 进行测试。

如果我可以将其配置为在客户端每秒至少维持 50 个新连接以及在服务器上维持更多新连接,那就太好了。


我按照这篇 Technet 文章通过设置 TcpNumConnections = 150,但这并没有什么区别。使用 tcpview,我仍然只能看到与我的 http 客户端关联的大约 20 个 tcp 套接字。

答案1

为了防止 TCP/IP 堆栈占用计算机上的所有资源,可以使用不同的参数来控制它可以处理的连接数。如果运行的应用程序不断打开和关闭连接(P2P),或者提供许多人同时尝试连接的服务(如 IIS 等 Web 服务器),则可以通过更改限制限制来提高这些应用程序的性能。

有一些参数限制 TCP 可以同时打开的最大连接数。

要查看有关如何增加可以同时打开的连接数的完整说明,请访问网站。

答案2

答案就在stackoverflow 这里可能在这里有用,我看到了同样的问题。

要增加每个主机的连接限制,您可以在开始发出 HTTP 请求之前随时执行此操作。

System.Net.ServicePointManager.DefaultConnectionLimit = 1000;

相关内容