讓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 使設置生效)
相關文章
相關標籤/搜索