2015-05-14 103 views
0

好的,這裏有。 由於我們的一臺生產服務器的性能問題,我被要求使用dottrace分析器來查看發生了什麼。 我正在分析的項目是一個在IIS中運行大量WCF服務的應用程序。這是一個相當複雜的項目,由多個組件組成。整個項目Ninject被用作DI容器。混淆dottrace分析結果

我試圖分析應用程序幾次在開發服務器上,以確保它是按預期工作,這似乎是如此。

我開始剖析我們的生產服務器(使用跟蹤的詳細程度,在W3WP)瞬間將服務器的性能下降,併成爲非常緩慢,反應遲鈍。我意識到profiler會有性能問題,但我不知道它幾乎會殺死服務器(在dev服務器上沒有問題)。

所以很困惑的是可怕的經歷之後。 Dit dottrace真的會殺死我們的生產服務器嗎?爲什麼?

從性能分析的結果至少是令人困惑的,我不知道該怎麼做,對我來說似乎ninject是這裏的問題,但這是真的,還是跟蹤跟蹤器跟我玩?

任何輸入的高度appriciated!下面是dottrace

結果http://i.stack.imgur.com/vVvlM.png

UPDATE:

好吧,我擴大了熱點,這似乎是大多WCF調用。但爲什麼他們出現在注入解析器下?

我會用取樣從現在開始,希望這將是我們的生產服務器上更柔和。

http://i.stack.imgur.com/c2tzL.png

+0

以「採樣」模式對其進行分析。除了「追蹤」模式減慢了特徵描述的應用程序之外,它還可以爲稱爲thouthands時間的方法提供扭曲的結果。在你的情況下,解析方法被稱爲157 000次。也看看需要什麼時間,請展開截圖中的樹http://i.stack.imgur.com/BWqBP.png –

回答

0

使用採樣模式似乎工作好了很多。不幸的是,分析沒有指出任何真正的瓶頸。