2015-05-14 3 views
0

Хорошо, здесь идет. Из-за проблем с производительностью на одном из наших производственных серверов меня попросили использовать профилировщик dottrace, чтобы узнать, что происходит. Проект, который я профилирую, представляет собой приложение с множеством служб WCF, работающих в IIS. Это довольно сложный проект и состоит из нескольких сборок. В рамках проекта Ninject используется как контейнер DI.Сбивание с толку результатов профилирования dottrace

Я пробовал профилирование приложения несколько раз на сервере разработки, чтобы убедиться, что он работает как ожидалось, что, казалось, было случаем.

Я начал профилировать наш производственный сервер (используя трассировку как уровень детализации, на w3wp), и мгновенно производительность сервера снизилась, и он стал очень медленным и не реагирующим. Я знал, что у профайлера будет проблема с производительностью, но я понятия не имел, что он почти убьет сервер (на dev-сервере проблем не было).

Так что после этого страшный опыт в очень смущен. Dit dottrace действительно убивает наш производственный сервер? Зачем?

Результаты профилирования, по крайней мере, сбивают с толку, и я понятия не имею, что с ними делать, мне кажется, что проблема в ninject здесь, но действительно ли это, или это профайлер dottrace, играющий со мной ?

Любой вход очень приветствуется! Ниже результаты от dottrace

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

UPDATE:

Хорошо, я расширил точки доступа, это, кажется, в основном WCF звонков. Но почему они появляются под преобразователем ninject?

Теперь я буду использовать отбор проб и надеюсь, что он будет более мягким на нашем производственном сервере.

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

+0

Профиль в режиме «Сэмплинг». Кроме того, режим «трассировки» замедляет профилированное приложение, он может обеспечить искаженные результаты для методов, называемых временами thouthands. В вашем случае методы Resolve называются 157 000 раз. Также, чтобы посмотреть, что занимает все это время, пожалуйста, разверните дерево на этом скриншоте http://i.stack.imgur.com/BWqBP.png –

ответ

0

Использование режима выборки, кажется, работает намного лучше. К сожалению, профилирование не указывало на какие-либо реальные узкие места.

Смежные вопросы