信息发布→ 登录 注册 退出

基于.net中突破每客户端两个http连接限制的详细介绍

发布时间:2026-01-11

点击量:
在Http协议中,规定了同个Http请求的并发连接数最大为2. 这个数值,可谓是太小了。
而目前的浏览器,已基本不再遵循这个限制,但是Dot Net平台上的 System.Net 还是默认遵循了这个标准的。
从而造成了,在使用HttpWebRequset 或者 WebClient 利用多线程的方式,访问某个网站时,经常出现 连接被异常关闭的错误,大大降低了效率。
这个限制的值,是可以自己设置或配置的。
System.Net.ServicePointManager.DefaultConnectionLimit 就是设置的地方。 可以根据实际情况,来设置这个值的大小,不过,建议不要超过1024,推荐为512,已经足够了。
当然,也可以直接在程序的 app.config中配置这个值。
此值设置后,只对以后发起的HTTP请求有效。
两个办法:
1。限制针对应用程序域,为每个线程使用不同的应用程序域:
复制代码 代码如下:
AppDomain appDomain = AppDomain.CreateDomain("");
appDomain.ExecuteAssembly(@"TestClient.exe");
AppDomain.Unload(appDomain);

2。在app.config配置文件中添加:
复制代码 代码如下:
<system.net>
 <connectionManagement>
  <add address="*" maxconnection="100"/>
 </connectionManagement>
</system.net>

标签:# 降低了  # Net  # Http  # Dot  # BR  # DefaultConnectionLimit  # app  # 足够了  # 太小了  # 平台上  # 规定了  # .net  # 连接数  # 配置文件  # 多线程  # 只对  # 可以根据  # 造成了  # 实际情况  # 可以直接  # 应用程序  # http客户端  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!