欢迎光临
我们一直在努力

IIS7.5也有Warm Up功能 让ASP.NET第一次Request不变慢

页开发者早期最常遇到一个问题,当网站布署到IIS时候,每当IIS或是Application Pool重启后,第一位进入网站的使用者,其体验往往第一个反应就是网站很慢,然后就一直询问IT为什么网站这么慢。但是,IT再去确认之后,网页速度又没有问题,虽然这问题看似不是很大问题,不过,有时企业内部网站,会因为在Web Site 初始化时候进行一堆设定跟Loading Data,这样等待时间就不会是几秒而已了。因此,早期在IIS7.0以前为了避免这不友善的使用者体验,通常都会自行撰写Warm Up功能,这种功能大都是仿真使用者第一次登入动作,让真正第一次使用者对于IIS来说是第二次的Request来解决这问题。

自从Windows 2012出来之后,这部分Application Initialization功能已经有内含在IIS8之中,可以直接进行设定就可以。

 

不过,在大部分的企业用户中并不可能这么快都使用Windows 2012,大都还停留在IIS6或是IIS7.X的时代,不过,目前微

软针对Windows R2的IIS7.5,Release Warm Up的模块叫做Application Initialization Module for IIS 7.5,让在IIS 7.5也可

以有此功能,让我们透过外挂模块就可以轻松拥有Warm Up机制。

官方下载网址:http://www.iis.net/downloads/microsoft/application-initialization

 

下载完毕,点击两下就可以开始安装。

 

基本上安装速度很快,一下就可以安装完毕,安装完毕后会要求重新开机,因此,在安装时须注意此主机这个时段可以重新 www.it165.net

开机不然就会很糗了


原则上安装模块完毕后,因该在IIS中会出现Warm Up图标控件,让我们去设定。但是,我在这边安装了几台都没有出

现这控件可以进行网站设定。甚至连安装在Win7上也没有出现控件。不过,若是去IIS模块列表中,却又可以看到已

经确实有安装了Application Initialization模块,可供使用。

 

为了解决此问题,又必须再去安装Application Initialization for UI,才有办法让IIS出现UI可以进行设定,安装档请参阅附档

下载。安装完毕后,在IIS控制置模块中会出现一个Application Initialization图示,此时我们就可以开始设定了

 

Warm Up设定方式满简单的,可以针对Application Pool层级或是Web Site层级两者进行设定

1.Application Pool层级:只要有需要的Application Pool的Start Mode设定AlwaysRunning就可以

 

2.Web Site层级:选择你们要做Preload的Web Site。

 

选择好Web Site之后,记得下图红框地方要打勾,才有办法进行Warm Up功能。

 

以上都设定好之后,来进行试验一下。分别测试有无Warm Up的Web Site对于第一个Request的反应,当所有Web Site都

重新启动,模拟第一位User进入此网站

无设定Warm Up的Web Site

 

有设定Warm Up的Web Site

 

从上图的比较发现,有无Warm Up对于网站的反应是有差别的。

Application Initialization for UI :http://www.it165.net/uploadfile/2013/0601/20130601104150404.zip

分享到:更多 ()

评论 抢沙发

评论前必须登录!

 

更专业 更方便

联系我们联系我们