如following article所述,某些.NET應用程序池在首次請求時變得非常慢(約x4次)。問題只涉及應用程序池。其中一些緩慢,一些不在相同的條件:網絡應用程序,配置,文件權限等。某些應用程序池在初次加載時速度很慢
所以我的問題是,這是怎麼發生的?一個應用程序池如何使用相同的設置變得比其他應用程序池慢,甚至在重新啓動這兩個應用程序池之後又有辦法修復/防止它?一旦應用程序池變慢,即使停止並啓動應用程序池也不會再次變快。
我確保在每次測試之前回收應用程序池,以便所有測試都是「第一次請求」。
我發現同樣的問題,並想知道如果有人在這裏找到這個奇怪的問題的解決方案?
請注意,這不是asp.net初始化速度的一般問題。我們將同一臺服務器上的相同代碼與兩個應用程序池進行比較:通用(快速)和中斷(慢)。切換兩個相同(相同)瑣碎(沒有任何數據庫訪問等)之間的兩個應用程序池(相同的設置,但一個不合理的「慢」)測試asp.net應用程序改變他們的行爲:一個開始非常緩慢,另一個 - 不。
的問題是:
- 爲什麼應用程序池突然變得壞了(慢)?
- 如何避免應用程序池變得「慢」?
- 如何修復損壞的應用程序池?是的,我們可以創建 無限的新應用程序池,但無論如何,這是奇怪的和不可接受的 生產環境。
UPD:我已經注意到這個問題甚至不是「慢」的應用程序池本身,而是它的名字!如果您重命名「緩慢」的應用程序池,它將再次變得「快速」。如果您創建的新應用程序池名稱爲之前重命名(或刪除)的「緩慢」的應用程序池,則此應用程序池會再次變慢!
我在使用應用程序標識的.NET 4集成應用程序池上也經歷過相同的情況。您對應用程序池使用的是什麼類型的身份緩慢? –