環境:Windows Server 2003; IIS 6,ASP.NET 2.0.50727iis啓動延遲與aspx頁面
我對我們設置的一個全新的Web服務器感到瘋狂(請注意,這個問題在我們其他具有相同配置的Web服務器上不會發生)。當第一次加載和asp.net應用程序時,該頁面會在瀏覽器中顯示頁面之前掛起整整一分鐘。加載第一頁之後,所有內容都運行得非常快。
注1:您可能會說該應用程序正在進行首次編譯。但我已經排除了。我將跟蹤消息放在應用程序中,並且所有跟蹤消息都在請求頁面的一秒鐘內運行。因此,該應用程序立即編譯並運行。但是當應用程序完成渲染頁面並打印了最後的跟蹤消息時,沒有任何反應。在將完成的頁面沿着http傳輸到用戶的瀏覽器之前,IIS正在幕後做一些事情。注意2:我們發現在第一次點擊應用程序並且事情運行正常後,如果我們等待一個小時,我們會再次得到延遲。因此,IIS在緩存中有一些東西在一小時後清除,並導致我們的站點再次停頓。注意3:在每次測試之間,我們停止/啓動IIS以強制它在加載應用程序時掛起。注意4:我們觀察了任務管理器,看看IIS是否正在觸發並佔用大量資源來處理某些事情。但事實並非如此。在瀏覽器顯示頁面之前,我們確實看到了一個非常快的峯值,達到50%,但在之前的60秒內,服務器上只有1%的使用率。
注意5:在另一個測試中,我創建了一個HelloWorld.html頁面,這不會導致IIS掛起。因此,這與第一次通過http發送渲染頁面時調用ASP.NET庫有關。另外,由於該應用程序已經被編譯並立即運行,它只是asp.net的一部分,它將渲染後的頁面發送給用戶的瀏覽器,導致延遲。
任何想法?我們在這裏是一個損失。我們所有的其他網絡服務器都是以相同的方式安裝並且工作正常,但這是一個新的安裝。所以必須有一個配置設置被遺漏或者需要安裝?
感謝,
布賴恩
你讀過關於事件查看器的任何asp.net錯誤嗎?您必須至少有一些超時事件 - 並關閉來自客戶端的連接,從而導致線程中斷。 – Aristos
我們看了一下事件查看器,但沒有看到任何東西。我會做更多的測試並再次觀看。此外,除了我們的測試,此服務器沒有流量。所以沒有客戶放棄線程或類似的東西。只是我們做簡單的頁面請求和觀看是掛起的。 – user441058
另一個問題可能是快速池重置,您可能具有類似的配置,但池中的設置可能不同。如果您在內存增長或太快等情況下重新啓動它們,請檢查它們。 – Aristos