我有一個ASP.NET應用程序與另一個API通信並在Page_Load上處理很多。ASP.NET內存問題
如果在我的瀏覽器中,我拿着F5並點擊該站點,服務器從120mb發射到1.5GB。
我找不到任何內存泄漏或未關閉的對象。有什麼方法或額外的事情我可以幫助嗎?
謝謝你的時間!
我有一個ASP.NET應用程序與另一個API通信並在Page_Load上處理很多。ASP.NET內存問題
如果在我的瀏覽器中,我拿着F5並點擊該站點,服務器從120mb發射到1.5GB。
我找不到任何內存泄漏或未關閉的對象。有什麼方法或額外的事情我可以幫助嗎?
謝謝你的時間!
使用類似於探查器ANTS Profiler或dotTrace。
有很多很多事情可能導致這種行爲 - 試圖用任意性的建議來解決問題可能不會讓我們到任何地方。
一旦分析器發現問題區域,如果您無法解決該問題,則可以在新問題中發佈該代碼。
對於它的價值,1.5 GB不是巨大的。如果您按住按鈕,它最終是否會輸出OutOfMemoryException
?
我會建議看看來自Red Gate的ANTS Memory Profiler和/或ANTS Performance Profiler。他們非常實惠,他們在識別瓶頸方面做得非常出色。
螞蟻內存分析器:
http://www.red-gate.com/products/dotnet-development/ants-memory-profiler/
螞蟻性能分析器:
http://www.red-gate.com/products/dotnet-development/ants-performance-profiler/
+1「的個人資料,並找出問題」 - 知道發生了什麼事是必須的,如果你想解決問題。
但短期來看,它可能更便宜,更容易轉移到體面的64位盒/ 64位版本的Windows,並使用64位ASP.Net - 您將獲得更多的內存可供IIS進程使用。
離開瀏覽器後會發生什麼? - 記憶是否穩定下來?另外,你的CPU利用率是多少? –
當您釋放F5按鈕時會發生什麼,它會恢復嗎?此外,還有其他方式來測試您的應用程序的性能。 Visual Studio Ultimate有一個測試套件,您可以使用它來發出大量請求,並實際控制您執行的請求數量。 –
感謝您的回覆。代碼運行在名爲Umbraco的.net cms內的用戶控件中。我看了一下你的問題,大概在10-15分鐘後恢復,然後回到45mb,然後慢慢增加到120mb,並停留在那裏。 問題是,我發現該網站在週末因爲我們有大約30-60k的訪客而下降。有什麼辦法可以減少內存使用量嗎? – Base33