修改Windows Server 2008+IIS 7+ASP.NET默认连接限制,支持海量并发连接数
WIN7中IIS7默认配置的服务器同时最多只能处理5000个请求,如果由于某些情况(程序问题等)造成同时请求超过5000时,将会导致服务器错误。为此,修改服务器的设置,从而支持10万个同时请求。
具体设置如下:
1. 调整IIS7应用程序池队列长度
依次打开,IIS管理器 > 应用程序池 > 高级设置,修改队列长度为65535。
2. 调整IIS 7的appConcurrentRequestLimit设置
打开%systemroot%\System32\inetsrv\config\applicationHost.config,将appConcurrentRequestLimit的值由默认5000改为100000。
<serverRuntime appConcurrentRequestLimit="100000" />
也可以直接在运行中执行:
c:\windows\system32\inetsrv\appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000
3. 调整machine.config中的processModel>requestQueueLimit的设置
打开%windir%\Microsoft.NET\Framework\v4.0.30319\Config\machine.config,将requestQueueLimit的值由默认5000改为100000。
<configuration> <system.web> <processModel requestQueueLimit="100000"/>
4. 修改注册表,调整IIS 7支持的同时TCPIP连接数
在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP\Parameters节,将默认连接数5000改为100000。
reg add HKLM\System\CurrentControlSet\Services\HTTP\Parameters /v MaxConnections /t REG_DWORD /d 1000000
此外,针对数据库的大并发处理,参见以下资料:
http://msdn.microsoft.com/zh-cn/library/aa0416cz.aspx
http://blog.csdn.net/fhzh520/article/details/7757830
http://blog.csdn.net/truong/article/details/8929438
http://www.cnblogs.com/chuncn/archive/2009/04/21/1440233.html
http://jingyan.baidu.com/article/948f5924235410d80ff5f91d.html