内容目录
IIS 程序池优化配置方案IIS高并发配置一.IIS站点绑定程序池设置二.支持万级并发请求
IIS 程序池优化配置方案
最近由于系统的客户越来越多,有客户反映访问速度变慢,尤其是api的请求增长迅速。于是想从IIS入手来一波优化。
IIS高并发配置
一.IIS站点绑定程序池设置
找到Web站点对应绑定的应用程序池,“应用程序池”→“找到对应的应用程序池”→右键“高级设置”。
1.队列长度 默认是1000修改为65535 最大长度。
2.启动32位应用程序:默认值False,改为True,否者安装一些32的组件或32位的php都会出错。
3.托管管道模式:Integrated 或Classic
4.闲置超时(分钟):默认20分钟,改久点。
5.快速故障防护→已启用:默认True,改为False。
6.回收间隔时间 默认每天回收,修改为0 不回收。
7.在“禁止重叠回收”里选择“true”,这样就避免了应用程序池回收假死问题。
二.支持万级并发请求
1.调整IIS7的appConcurrentRequestLimit设置由原来的默认5000改为100000。
[1] 在cmd中执行:
1c:\windows\system32\inetsrv\appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000
[2] 在%systemroot%\System32\inetsrv\config\applicationHost.config中可以查看到该设置:<serverRuntime appConcurrentRequestLimit="100000" />
2.调整machine.config中的processModel>requestQueueLimit的设置
[1] 单击“开始”,然后单击“运行”,或者 windows + R。
[2] 在“运行”对话框中,键入notepad%systemroot%\Microsoft.Net\Framework64\v4.0.30319\CONFIG\machine.config
,
然后单击“确定”。(不同的.NET版本路径不一样,可以选择你自己当前想设置的.NET版本的config)
[3] 找到如下所示的 processModel 元素:<processModel autoConfig="true" />
[4] 将 processModel 元素替换为以下值:<processModel enable="true" requestQueueLimit="15000" />
[5] 保存并关闭 Machine.config 文件
3.修改注册表,调整IIS 7支持的同时TCPIP连接数由原来的默认5000改为100000。\
在cmd中执行
1reg add HKLM\System\CurrentControlSet\Services\HTTP\Parameters /v MaxConnections /t REG_DWORD /d 100000
4.运行命令使用设置生效net stop http & net start http & iisreset
注意 :使用命令 可能会报错(报错原因就是配置设置的有问题)
一定要注意配置文件的修改 否则后果很严重 !!!!