让Windows Server 2008 + IIS 7+ ASP.NET 支持10万并发请求

  1. 调整IIS 7应用程序池队列长度windows

由原来的默认1000改成65535。app

General->Queue Length设置为65535(队列长度所支持的最大值)ide

Process Model->Idle Time-out设置为0(不让应用程序池由于没有请求而回收)命令行

Recycling->Regular Time Interval设置为0(禁用应用程序池按期自动回收)server

2. 调整IIS 7的appConcurrentRequestLimit设置队列

由原来的默认5000改成100000。ci

设置命令:
cmd

c:\windows\system32\inetsrv\appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000

在%systemroot%\System32\inetsrv\config\applicationHost.config中能够查看到该设置:it

<serverRuntime appConcurrentRequestLimit="100000" />

(保存后该设置当即生效)io

3. 调整.NET Framework的machine.config

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config

<processModel autoConfig="true" />

改成

<processModel enable="true" requestQueueLimit="100000"/>

(保存后该设置当即生效)

参考文章:http://technet.microsoft.com/en-us/library/dd425294(office.13).aspx

4. 修改注册表,调整IIS 7支持的同时TCPIP链接数

由原来的默认5000改成100000。

reg add HKLM\System\CurrentControlSet\Services\HTTP\Parameters /v MaxConnections /t REG_DWORD /d 100000 

(须要在命令行运行 net stop http  & net start http & iisreset 使设置生效)
相关文章
相关标签/搜索