领先的免费Web技术教程,涵盖HTML到ASP.NET

网站首页 > 知识剖析 正文

AspNet在windowserver中如何让IIS支持高并发

nixiaole 2024-11-17 00:26:03 知识剖析 18 ℃

我们在开发完ASP.NET程序后,如何部署在IIS里并支持高并发呢?(IIS默认支持1000并发),这是很多初学者困惑的问题,今天笔者详细介绍一下IIS的配置,笔者以 windowserver2019为例可支持10万的高并发:

一、调整IIS应用程序池配置,将队列长度:65535(根据服务器配置可以加长),固定时间间隔:0分钟,闲置超时:0分钟(不超时)




二、调整IIS的appConcurrentRequestLimit设置

C:\Windows\System32\inetsrv\config\applicationHost.config

cmd命令行直接运行:

c:\windows\system32\inetsrv\appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000

可以直接在 %systemroot%\System32\inetsrv\config\applicationHost.config 路径下配置文件查看到该设置是否被修改(默认为5000):

<serverRuntime appConcurrentRequestLimit="100000" />


三、修改 ASP.NET 请求队列的限制,打开对应.net版本配置文件,编辑requestQueueLimit(默认为5000):

%systemroot%\Microsoft.NET\Framework\v4.0.30319\Config\machine.config

%systemroot%\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config

搜索相应位置加上 找到如下所示的 processModel 元素:<processModel autoConfig="true" />

将 processModel 元素替换为以下值:<processModel enable="true" requestQueueLimit="100000" />

<configuration>

<system.web>

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


四、修改注册表,调整IIS支持的同时TCP/IP连接数

cmd命令行直接运行:

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


五、运行命令重启使设置生效

net stop http & net start http & iisreset

Tags:

最近发表
标签列表