背景:
IIS7.5是微軟推出的最新平臺IIS,性能也較以前有很大的提升,但是默認的設置配不適合很大的請求。但是我們可以根據實際的需要進行IIS調整,使其性能更佳,支持同時10萬個請求。
以下方案,通過對IIS7的配置進行優化,調整IIS7應用池的隊列長度,請求數限制,TCPIP連接數等方面,從而使WEB服務器的性能得以提升,保證WEB訪問的訪問流暢。
解決方案:
步驟一:調整IIS的應用程序池隊列長度。
在【應用程序池】列表中,選擇你相應網站所使用的應用程序池,將原來的隊列長度由1000改為65535。當然這里的隊列長度你可以根據自己的訪問用戶*1.5來設置,例如:你有2000用戶,你此處就可以設置為3000(3000=2000用戶數*1.5),官方參考
設置如下圖:
步驟二:調整IIS的appConcurrentRequestLimit值
打開cmd命令,運行命令:c:\Windows\System32\inetsrv\appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000
步驟三:修改ASP.NET請求隊列限制即調整machine.config中的processModel>RequestQueueLimit
1、單擊“開始”,然后單擊“運行”。
2、在“運行”對話框中,鍵入 notepad %systemroot%\Microsoft.Net\Framework64\v4.0.30319\CONFIG\machine.config,然后單擊“確定”。(不同的.NET版本路徑不一樣,你可以選擇你自己當前想設置的.NET版本的config)
3、找到如下所示的 processModel 元素:
4、將 processModel 元素替換為以下值:
5、保存并關閉 Machine.config 文件。
步驟四:修改注冊表,調整IIS支持的并發TCPIP連接數
在cmd命令中運行命令:reg add HKLM\System\CurrentControlSet\Services\HTTP\Parameters /v MaxConnections /t REG_DWORD /d 100000,當然也可以手動去注冊表修改
可在注冊表中查看
至此,IIS的調整優化就完成了,可以同時支持10W個請求。
參考:
MSDN:http://technet.microsoft.com/zh-cn/library/dd425294(office.13).aspx,http://technet.microsoft.com/zh-cn/library/dd441171(v=office.13).aspx