Iis-7

IIS7/.NET 記憶體洩漏 - 工作程序回收是唯一的長期修復嗎?

  • November 1, 2010

我有一個 .NET 4 應用程序洩漏記憶體的問題。這不是正常意義上的“忘記清理”洩漏,他們正在編譯在記憶體中創建一堆 .NET 程序集,他們告訴我在 .NET之後無法清除它們。所以現在由我來維持服務。

所以我面臨著幾個選擇。有“設置 IIS 工作程序以在記憶體變大時回收”。這會有所幫助,但對我來說,它似乎仍然是一個固有的亞穩態系統,並且在池回收時會對使用者產生影響,不是嗎?

他們嘗試將編譯分解為單獨的臨時應用程序域,但是每個操作都非常慢,每次點擊增加約 15 秒來生成應用程序域。所以他們不想那樣做。

除了“大量回收”之外,我還能從系統方面做些什麼來以更持久的方式緩解這個問題?(或應用程序的想法,但這對 SO 來說更重要。)

這聽起來像是典型的程式錯誤。將解除安裝程序集移動到他們自己的 appdomain 就可以了。這就是我為需要能夠解除安裝的外掛等東西所做的事情。

引用自:https://serverfault.com/questions/197045