IIS7性能配置优化提速,支持同时10万个请求

已为老胡 2022-08-30 AM 1263℃ 0条

背景:

     IIS7.5是微软推出的最新平台IIS,性能也较以前有很大的提升,但是默认的设置配不适合很大的请求。但是我们可以根据实际的需要进行IIS调整,使其性能更佳,支持同时10万个请求。

     以下方案,通过对IIS7的配置进行优化,调整IIS7应用池的队列长度,请求数限制,TCPIP连接数等方面,从而使WEB服务器的性能得以提升,保证WEB访问的访问流畅。

解决方案:

一、常规设置:


一、应用程序池右键高级设置

1、设置队列5000

2、设置固定回收时间       04:00:00

3、设置空闲时间Suspend

二、网站右键高级设置

1、启用预加载

三、先来“IIS应用程序池”优化后的参数配置截图:

 

 参考文档:iis配置优化

 二、性能优化


关闭IIS日志

      当开启记录功能后,IIS会事无巨细地忠实记录所有的web访问记录。这些记录文件的内容是非常庞杂的,比如访问时间、客户端IP、从哪个链接访问、 Cookies等,另外还包括 Method(方法), UserAgent(用户代理)等。这些记录不但占用大量的磁盘空间还大大地影响了web服务器的性能。有人做过评测,停止访问记录可以提升5%到8%的web性能。

启用Gzip压缩

       IIS 压缩功能使用Gzip算法

       gzip是HTTP的一种压缩算法,HTTP压缩是在Web服务器和浏览器间传输压缩文本内容的方法。HTTP压缩采用通用的压缩算法如gzip等压缩HTML、JavaScript或 CSS文件。压缩的最大好处就是降低了网络传输的数据量,从而提高客户端浏览器的访问速度。当然,同时也会增加一点点服务器的负担。Gzip是比较常见的一种HTTP压缩算法。

设置输出缓存

 步骤:双击输出缓存、在空白页右键添加,配置需要缓存的文件和缓存时间间隔

 

启用内容过期,设置http响应头

 步骤一、以功能视图模式打开网站,如下图所示:点击“HTTP响应标头”

 步骤二、出现下图的界面,点击“设置常用标头”

步骤三、如下图所示:选中“保持HTTP链接”,和“使用web内容过期”,选中之后,多少天,或多少分钟,我这里选择的是天,对于不经常更新的网站可以多选择几天,这样的话,用户打开网页基本都可以从本地缓存调用,从而可提高网页的打开速度。

 

 参考文档:IIS设置输出缓存和压缩

参考文档:iis启用内容过期

三、并发性


解决方案

步骤一:调整IIS的应用程序池队列长度。

在【应用程序池】列表中,选择你相应网站所使用的应用程序池,将原来的队列长度由1000改为65535。当然这里的队列长度你可以根据自己的访问用户*1.5来设置,例如:你有2000用户,你此处就可以设置为3000(3000=2000用户数*1.5),官方参考

设置如下图:

 SNAGHTMLcf6a1b

步骤二:调整IIS的appConcurrentRequestLimit值

打开cmd命令,运行命令:c:\Windows\System32\inetsrv\appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000

在%systemroot%\System32\inetsrv\config\applicationHost.config中可以查看到该设置:

<serverRuntime appConcurrentRequestLimit="100000" />

image

image

步骤三:修改ASP.NET请求队列限制即调整machine.config中的processModel>RequestQueueLimit

1、单击“开始”,然后单击“运行”。

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="100000" />

image

5、保存并关闭 Machine.config 文件。

步骤四:修改注册表,调整IIS支持的并发TCPIP连接数

在cmd命令中运行命令:reg add HKLM\System\CurrentControlSet\Services\HTTP\Parameters /v MaxConnections /t REG_DWORD /d 100000,当然也可以手动去注册表修改

image

可在注册表中查看

image

至此,IIS的调整优化就完成了,可以同时支持10W个请求。


标签: none

非特殊说明,本博所有文章均为博主原创。

评论啦~