Windows-Server-2008-R2
mscorsvw.exe(.NET 執行時優化服務)的 CPU 使用率不穩定
我有一個 Server 2008 R2 終端伺服器,它在過去三個月裡一直處於閒置狀態,使用率非常非常低(可能 1 個使用者一個小時,每天一次)。
突然之間,我無法理解,
mscorsvw.exe (.NET Runtime Optimisation Service)
已經開始消耗 100% 的處理器,導致各種警報和触發器消失。這是一個重複的模式,所以很容易預測接下來什麼時候會發生:有誰知道這可能是什麼原因?我已經完成了明顯的(重新啟動伺服器),但除此之外我是 SOL。
我能想到的唯一可能相關的是我今天早上通過 WSUS 批准了六個 Windows 更新,但它們要到明天凌晨 2 點才能安裝(其中一些與 .NET 4 安全性有關)。
沒有人登錄到伺服器(除了我),即使他們登錄了,我們也沒有任何可用的 .NET 應用程序。
mscorsvw 是一個預編譯 .NET 二進製文件的程序。您的更新可能觸發了此活動。至少,這就是http://blogs.msdn.com/b/davidnotario/archive/2005/04/27/412838.aspx所說的正在發生的事情。
如果您可以執行 sysinternals procmon 實用程序,您可能會獲得更多線索。這將告訴您 mscorsvw 正在點擊或關注哪些文件,並幫助確定它是否真的關注潛在的 .NET 文件。
從那個網站,如果這是正在發生的事情,執行
ngen.exe 執行queueditems
應該通過讓它一次執行所有內容而不是等待 CPU 空閒來“清除隊列”,因為它似乎是在您的伺服器上發生這種情況時。完成預編譯後,它應該停止發生。