IIS7 优化-网站请求并发数>>
/*调整IIS 7应用程序池队列长度*/
队列长度 5000~20000(原来默认1000,最大65535,建议10000 )
/*调整IIS 7的appConcurrentRequestLimit设置*/
由原来的默认5000建议改为20000。(最大100000)
直接运行:
C:WindowsSystem32inetsrvappcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:20000
在%systemroot%System32inetsrvconfigapplicationHost.config中可以查看到该设置。
/*调整machine.config中的processModel>requestQueueLimit的设置*/
由原来的默认5000建议改为20000。
(位置类似C:WindowsMicrosoft.NETFrameworkv2.0.50727CONFIG)
<configuration>
<system.web>
<processModel autoConfig="true" requestQueueLimit="20000" memoryLimit="60"/>
/*修改注册表,调整IIS 7支持的同时TCPIP连接数*/
由原来的默认5000建议改为20000。直接在命令行运行
reg add HKLMSystemCurrentControlSetServicesHTTPParameters /v MaxConnections /t REG_DWORD /d 20000
完成上述4个设置,就可以支持2万(或10万)个同时请求。
IIS应用程序池设置>>
在应用程序池中做如下设置:(windows2003名称/windows2008名称)
/*IIS以内置账户的用户表示运行*/
标识 NetworkService
/*IIS自动将多长时间不活动的应用程序进程回收掉*/
回收工作进程(分钟)/固定时间间隔(分钟) 0(可选120~800)
(另,需先将进程模型->闲置超时 设为0)
/*设置每日4:00回收工作进程*/
在下列时间回收工作进程/特定时间 (单击一下“添加”按钮,来指定一个网站处于空闲状态的时间来开始回收应用程序进程,正常情况下我们可以将该时间设置为深夜2~4点左右)
可添加如下时间段:08:00、12:40、19:00、01:00
/*设置IIS的使用内存*/
虚拟内存限制(KB) 0
默认0禁用,如果启用则默认值为512000 (500 M);建议设置为不超过虚拟内存总数的70%;
专用内存限制(KB) 5033165
启用则默认值为196608 (192 M);建议设置为不超过物理内存总数的60%;如系统内存8G,则设置的值为8*0.6*1024*1024=5033165 (KB)
/*设置处理对应用程序池的请求的最大工作进程数*/
最大工作进程数/最大工作进程数 1(如支持session共享或多点登录,可设置为50~100)
/*指定IIS系统接受到多少请求后就能开始回收应用程序进程了*/
回收工作进程(请求数目)/请求限制 不设置
消耗太多内存时回收工作进程:全不选
最大故障数 60
启动时间限制 90(秒)
/*适当延长这个时间,避免关闭超时错误*/
关闭时间限制 300(秒)
/*IIS7中设置缓存的方法就两步 如是负载均衡暂不设置此项(除非支持IP Hash)*/
1、允许客户端缓存——在http头中加入参数 Cache-Control 并把它的值设为以cache
操作方法:在IIS中选定要配置的网站,然后打开右边的“http响应标头”,选择“添加...”在弹出的对话框中输入参数名称 Cache-Control 和参数值 cache (不区分大小写)。
2、设置过期时间(缓存文件保留时限)—— 在IIS中设置缓存过期时间,默认情况下IIS7的缓存是设置为“立即失效”的
操作方法:还是和上一步一样,打开“http响应标头”,选择“设置常用标头...” 在弹出的对话框中选中“使web内容过期”,将过期时间设定为7天以后(这个时间可以根据网站中网页的特点和页面更新的频度来设置)