优化IIS7.5支持10万个同时请求的配置方法

2019-10-16 18:14:30王旭

#appConcurrentRequestLimit
c:windowssystem32inetsrvappcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000

reg add HKLMSystemCurrentControlSetServicesHTTPParameters /v MaxConnections /t REG_DWORD /d 100000

# too long
reg add HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesHTTPParameters /v MaxFieldLength /t REG_DWORD /d 32768
reg add HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesHTTPParameters /v MaxRequestBytes /t REG_DWORD /d 32768

#更多的可以可以查看这篇文章,手工操作的可以查看这篇文章
start "C:Program FilesInternet Exploreriexplore.exe" //www.jb51.net/article/36073.htm

下面为大家补充一点知识:

支持高并发的IIS Web服务器常用设置
适用的IIS版本:IIS 7.0, IIS 7.5, IIS 8.0

适用的Windows版本:Windows Server 2008, Windows Server 2008 R2, Windows Server 2012

1、应用程序池(Application Pool)的设置:

•General->Queue Length设置为65535(队列长度所支持的最大值)
•Process Model->Idle Time-out设置为0(不让应用程序池因为没有请求而回收)
•Recycling->Regular Time Interval设置为0(禁用应用程序池定期自动回收)

2、.Net Framework相关设置

a) 在machine.config中将


<processModel autoConfig="true" />

改为

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

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

b) 打开C:WindowsMicrosoft.NETFramework64v4.0.30319ConfigBrowsersDefault.browser,找到<defaultBrowser id="Wml" parentID="Default" >,注释<capabilities>部分,然后运行在命令行中运行aspnet_regbrowsers -i。

<defaultBrowser id="Wml" parentID="Default" >
 <identification>
 <header name="Accept" match="text/vnd.wap.wml|text/hdml" />
 <header name="Accept" nonMatch="application/xhtml+xml; profile|application/vnd.wap.xhtml+xml" />
 </identification>
<!--
 <capabilities>
 <capability name="preferredRenderingMime" value="text/vnd.wap.wml" />
 <capability name="preferredRenderingType" value="wml11" />
 </capabilities>
-->
</defaultBrowser>

以解决text/vnd.wap.wml问题。

3、IIS的applicationHost.config设置

设置命令:

c:windowssystem32inetsrvappcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000
设置结果:
<serverRuntime appConcurrentRequestLimit="100000" />

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

4、http.sys的设置

注册表设置命令1(将最大连接数设置为10万):


reg add HKLMSystemCurrentControlSetServicesHTTPParameters /v MaxConnections /t REG_DWORD /d 100000

注册表设置命令2(解决Bad Request - Request Too Long问题):

reg add HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesHTTPParameters /v MaxFieldLength /t REG_DWORD /d 32768