當我們把網站部署在IIS7或IIS6S的時候,每當IIS或是Application Pool重啟後,第一次請求網站 反應總是很慢,原因大家都知道(不知道可以參考這個 動畫說明ASP.NET網頁第一個Request會比較慢的原因 )。所以每次網站更新都會給第一個用戶代號不好的用戶體驗,因此之前大家得通過撰寫仿真模擬訪問動作或預編譯來解決此問題。但自從Windows 2012出來之後,這部分Application Initialization功能已經有內含在IIS8之中,可以直接進行設定就可以。不過微軟也發布了針對針對前期的IIS單獨模塊: Application Initialization Module for IIS 7.5 。
支持的操作系統有 Windows 7、Windows Vista、Windows Vista SP1、Windows XP SP2+、Windows Server 2003 SP1+、Windows Server 2008、Windows Server 2008 R2。
安裝完畢後要求重啟。有文說模塊安裝完畢後,在IIS裡能看到關於次模塊圖標,不過我是沒見著。為解決此問題,得再安裝 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之後,記得下圖紅框地方要打勾,若是當網站初始化時間要很久話,可以再Splash Page定義初始化網頁說明
說明網站正在初始化,讓用戶感覺比較友善
以上都設定好之後,進行測試一下。