我有一個相當繁忙的站點,每個月可以看到10米左右的視圖。IIS上的請求超時數很高
我的一個應用程序池似乎堵塞了幾個小時,我正在尋找一些關於如何解決它的想法..?我懷疑它以某種方式跑出線程,但我不知道如何確定這個追溯.. ..?以下是我所知道的:
- 該網站從未「失望」,但約90%的請求開始超時。
- 我可以看到大量的「HttpException - 請求超時」。在停機期間的日誌中
- 我無法找到任何會導致超時的SQL錯誤或代碼錯誤。
- 超時似乎已在所有頁面上的網站範圍內。
- 有一個頁面上有一個錯誤,它會在該特定頁面上導致錯誤。
- 該網站必須重新啓動。
該網站是ASP.NET C#3.5的WebForms ..
可能性:
- 主題枯竭:我的想法是,導致錯誤的頁面可能以某種方式開始干擾可用的線程?
- 全局代碼錯誤:另一種可能性是我的一個靜態類在某個地方有一個未發現的錯誤。這是不太可能的,因爲這從來沒有發生過,我無法找到這些類的任何日誌錯誤,但這是一種可能性。
UPDATE
我已經成功,現在跟蹤的問題,而它的發生。頁面正常加載,但由於某種原因WebResource.axd和ScriptResource.axd均爲需要一分鐘加載。在性能計數器中,我可以看到此時ASP.NET Requests Queued峯值。
btw;沒有C#3.5這樣的東西;我認爲你的意思是C#3.0的目標.NET 3.5 – 2011-04-26 09:21:16
正確,3.5 build .. – 2011-04-26 09:33:01
你使用線程/鎖/互斥鎖和多個工作池嗎?搜索互斥鎖。 – Aristos 2011-04-26 09:36:06