IIS进程回收后第一次访问慢的问题

Posted 国防部长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IIS进程回收后第一次访问慢的问题相关的知识,希望对你有一定的参考价值。

IIS 有一种机制,默认会在IIS空闲一定时间段后,将应用程序池进行回收,这个时间段在IIS6中默认是20分钟,在IIS7中默认是1740分钟。两个配置都不合理,都会导致当应用程序池被回收后,第一次访问网站的时候速度很慢。如果一直不回收应用程序池,会导致占用内存过大。

做SharePoint的人都知道,站点每天访问第一次登录的人都很慢。也是这个IIS回收机制的问题。
我们的希望是每天凌晨进行应用程序池回收,并同时进行第一次访问,这样每天工作时间访问的时候速度都是很快的。
具体做法是:
1. 在IIS中配置,应用程序池的回收时间,固定为每天都0:00:00进行;
2. 在Windows中制作一个计划任务,执行一个"activateWebSite.bat"批处理命令,固定为每天的03:00:00进行;

"activateWebSite.bat" 批处理命令的内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@echo off
 
@echo  正在关掉所有的IE进程(需要设置默认浏览器是IE)
taskkill   /im iexplore.exe /f /t
 
@echo 正在访问 http://localhost
start "C:\\Program Files\\Internet Explorer\\iexplore.exe"  http://localhost 
 
@echo 正在通过ping来延迟80秒钟,以方便IE打开页面
ping 127.0.0.1 -n 80
 
@echo  正在关掉所有的IE进程(需要设置默认浏览器是IE)
taskkill /im iexplore.exe /f /t
 
@echo 正在访问 http://localhost
start "C:\\Program Files\\Internet Explorer\\iexplore.exe"  http://localhost 
 
@echo 正在通过ping来延迟80秒钟,以方便IE打开页面
ping 127.0.0.1 -n 80
 
@echo  正在关掉所有的IE进程(需要设置默认浏览器是IE)
taskkill /im iexplore.exe /f /t 

添加的任务计划程序:

以上是关于IIS进程回收后第一次访问慢的问题的主要内容,如果未能解决你的问题,请参考以下文章

IIS8.0 配置应用程序初始化功能

IIS8.0 配置应用程序初始化功能

IIS回收后首次访问慢问题

在 Python 多处理进程中运行较慢的 OpenCV 代码片段

怎么让IIS7第一次访问相应速度加快

IIS+ASP.NET MVC必须知道的事