我已经阅读了maxconnection
中connectionManagement
设置中可以找到的每篇文章:http://support.microsoft.com/kb/821268/en-us,但是ASP.NET和.NET之间的术语很多混淆。
此设置是仅适用于ASP.NET还是也适用于.NET控制台应用程序/ Windows服务?
由于
答案 0 :(得分:4)
来自 Element (Network Settings):
元素(网络设置)元素包含设置 对于System.Net中的类和相关的子命名空间。该 设置配置身份验证模块,连接管理,邮件 用于接收的设置,代理服务器和Internet请求模块 来自互联网主机的信息。
因此,例如,maxConnection设置适用于使用WebRequest或其子类(HttpWebRequest,FtpWebRequest等)进行出站连接的任何尝试。 ASP.NET是核心框架上的一个层,因此这些设置适用于它以及所有其他类型的应用程序,如Windows.Forms和控制台应用程序。
确认我个人不得不为console,winform和ASP.NET应用程序设置此设置,以在进行负载测试时增加maxConnection限制。
使用示例:
<system.net>
<connectionManagement>
<add address="*" maxconnection="1000"/>
</connectionManagement>
</system.net>
如果要创建大量与同一URL的短期连接,请检查所连接的服务器是否正在使用HTTP keep-alive。如果进行SOAP服务调用。这将允许调用重新使用相同的连接。如果你不这样做,那么你可以耗尽机器上可用的TCP端口进行出站呼叫,因为一旦使用它们就不能立即重新使用(这一点实际上只与高负载或负载测试集有关) -UPS)。