為什麼IIS網頁每天首次開啟速度很慢?

03ngnntds發表於2019-03-28

今天碰到一個問題,我們的網頁在早晨的時候開啟總是很慢,其它時間有時也比較慢。開始認為是伺服器效能的問題,監測伺服器資源使用後,發現伺服器的資源沒有在高水平執行,可以確定不是伺服器硬體效能的問題,後來檢查日誌發現:IIS有定期回收應用程式池的設定,預設是應用程式池閒置(沒有請求,沒有運算)20分鐘後就關閉該應用程式池的程式,釋放資源,這樣再有客戶端請求的情況下,再啟動程式,建立程式,這肯定會有延遲。瞭解了這個設定之後,結合該網站的特點,我就將20分鐘設定延長,我設定為0,代表不關閉(該伺服器只有兩個網站,資源還比較充足,而且每天的訪問量也有限)。該設定都是在應用程式池高階設定中修改。

再擔心長時間不清空IIS快取會有問題,就設定了應用程式池在每天夜裡4點回收資源,在應用程式池右鍵正在回收中修改。

這樣就解決了白天開啟慢的問題,但早晨第一人開啟會比較慢,為了早晨第一個人開啟網頁能快一點,寫了個指令碼,加在計劃任務中,在每天的上班前1小時執行,將該應用程式池啟用,指令碼如下:

start/bc:\iexplore.ext.lnk後臺開啟網頁

ping127.0.0.1-n100:等待100秒

taskkillimiexplore.exe:殺死瀏覽器程式。

因為我是2008的系統,如果是2012的系統,就可以直接用powershell的invoke-webrequest命令啟用應用程式池,省略了利用瀏覽器的步驟。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69911024/viewspace-2639542/,如需轉載,請註明出處,否則將追究法律責任。

相關文章