一、IIS高并发配置

部署环境:Windows server 2012R2,IIS8 ,.Net6 SDK

并发要求:10万的并发量

1.应用池设置

选择对应的应用池—高级设置—修改队列长度为65535(注:可根据实际并发量设置

2.调整IIS appConcurrentRequestLimit设置

1)使用管理员身份运行cmd,执行命令c:\windows\system32\inetsrv\appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000

2)在 C:\Windows\System32\inetsrv\config\applicationHost.config 可以看到修改后的配置

3.设置requestQueueLimit

1)打开文件 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config

2)找到<processModel autoConfig="true"/> 修改为<processModel autoConfig="true" requestQueueLimit="100000"/>

4.调整IIS支持的同时TCPIP连接数

1)使用管理员身份运行cmd,执行命令:

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

5.运行命令使用设置生效

使用管理员身份运行cmd,执行命令net stop http & net start http & iisreset

二、Windows版本Nginx高并发配置

nginx windows 版1024限制,windows版本因为文件访问句柄数被限制为1024了,当访问量大时就会无法响应,就会出现错误:maximum number of descriptors supported by select() is 1024 while waiting for request

解决该问题,需要使用专门的windows版本(已修改了文件句柄数据的限制):

1.下载windows专用版本

nginx for windows官网:http://nginx-win.ecsds.eu/

nginx for windows下载载地址: http://nginx-win.ecsds.eu/download/

下载最新的ZIP:

2.配置注册表及conf

解压压缩包后:

1)首先运行注册表文件“Tweak-Optimize tcpip parameters for nginx connections.reg”

2)conf文件夹中的nginx-win.conf,把它复制一份更名为nginx.conf,然后在此文件中做配置(注:可以把上个版本的nginx中的配置拷贝过来)

3)将nginx_basic.exe 重新命名为“nginx.exe”

4)停用原来的Nginx服务,启用当前版本的nginx

 

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐