2011-12-05 164 views
2

目前我們的暫存IIS將100%負載放在CPU上。IIS高CPU負載:GetMetaDataInternalInterfaceFromPublic + 0x935c

(我是不允許使用的圖像後,所以我會鏈接它:http://i40.tinypic.com/1444qww.png

我現在已經無法找到,因爲線程的堆棧,導致高這種現象的原因加載不包含任何特定於應用程序的引用。如果有人在這個截圖中看到更多,那麼我或有類似的經歷,我很高興聽到它。

信息: 的Windows Server 2k8R2

如果有任何詳細信息,需要我會盡量提供。

謝謝。

+0

不可能說爲什麼,因爲你不說你在做什麼。猜測,依賴注入... – leppie

+0

不,我們還沒有使用依賴注入,這是我們將要嘗試整合的下一步驟之一(這是我們正在慢慢升級到體面架構的遺留代碼)我們添加了什麼這個版本主要是一些緩存。由於我們沒有改變任何明顯的會導致CPU負載這種尖峯的事情,所以爲什麼會發生這種情況,這對我來說是安靜的。因此,我希望這裏的某個人能夠從mscorwks看到這種特定方法的相同行爲,並指出我可能會去尋找原因的一些地方。 – IvanL

+0

IIS掛起,還是隻是慢?當CPU處於最大狀態時,堆棧跟蹤是否始終相同?您可以嘗試啓用IIS跟蹤,以查看是否有任何突出顯示。 – RickNZ

回答

1

我們發現其中一個業務層類在其初始化中將50k +表加載到內存中的字典中。這導致了長時間的等待以及高負荷。改變這一點迅速解決了我們的問題。