[C#] WebClient性能优化

WebClient缺省是为了安全和方便,不是为了性能。所以,当你打算做压力测试的时候,就会发现WebClient很慢。

WebClient性能很差,,主要原因有:

1、它缺省会使用IE的代理设置,而IE的代理设置默认是‘自动检测’。这意味着每个进程在第一次使用WebClient的时候都要自动检测一次代理,这常常会耗时5秒钟以上。

2、WebClient遵循了一个古老的垃圾设定“对每个网站最多只发起两个并发连接”

因此,可以如下优化WebClient的性能:

1、WebClient.Proxy = null,禁止它使用proxy

2、ServicePointManager.DefaultConnectionLimit = 500;

另外,ServicePointManager还有几个属性也可能影响性能:Expect100Continue、UseNagleAlgorithm、CheckCertificateRevocationList

WebClient用起来真麻烦。

有没有类似curl那样的单纯点的类库呀?

一定要记得挺身而出,即便帮不了忙,安慰也是最大的支持.

[C#] WebClient性能优化

相关文章:

你感兴趣的文章:

标签云: