本篇經驗以IIS8,Windows Server 2012R2作爲案例。html
IIS8 運行在 Windows Server 2012 and Windows 8 版本以上的平臺上。web
IIS中應用程序池和網站是單獨存在的,可是網站運行必須創建在對應的應用程序池啓動的前提下。app
默認狀況下,應用程序池在不活動狀況下(無請求操做),一段時間後,將被IIS自動回收掉。編輯器
IIS8 自帶應用程序初始化工具包,IIS7.5要搜索獨立安裝包進行安裝,低於7.5的暫時不支持IIS自動初始化。工具
本篇經驗中的方法能解決ASP.Net第一次訪問慢,間隔一段時間後,又訪問慢的問題。post
一、安裝IIS應用程序初始化功能,以下圖所示:網站
二、編輯網站對應應用程序池啓動模式,操做路徑:應用程序池 -> 網站對應程序池 -> 右鍵,高級設置 ->選擇,啓動模式 AlwaysRunning,以下圖所示:url
三、開啓對應網站預加載,操做路徑:網站 -> 對應網站 -> 右鍵,高級設置 ->選擇,預加載已啓用 True,以下圖所示:htm
四、設置配置編輯器,編寫默認預加載請求,打開配置編輯器,以下圖所示:blog
五、在左上角配置節點選擇system.webServer/applicationInitialization,其餘配置如紅圈中,以下圖所示:
六、在集合中添加一個初始化請求地址(用於IIS初始化默認請求地址),添加完成後,點擊配置界面右側的應用按鈕,並重啓應用程序池和網站,以下圖所示:
七、總結:
(1)原理說明:
IIS應用初始化會在網站第一次建立後或者對應網站的應用程序池回收後,自動開啓新程序池,並啓動網站初始化,模擬一次正常請求,使網站一直處於在線狀態。(此流程能夠藉助第三方工具或者服務模擬網站請求達到相同目的)
(2)配置說明:
(a)、啓用應用程序池(AlwaysRunning):保證應用程序池在第一次建立或者被回收後,能自動再次重啓運行。
(b)、啓用網站程序預加載(true):保證程序池在啓動事後,網站能響應預加載動做。
(c)、配置網站默認預加載路徑:保證程序在程序池啓動後,網站預加載過程當中,能快速編譯程序並進駐內存,保證請求快速響應。