Как узнать медленные места в сервисе WCF - PullRequest
1 голос
/ 16 сентября 2011

У нас есть стандартная служба WCF для обслуживания клиентов. Это регулярный сервис, ничего особенного. Передо мной стоит задача ускорить обслуживание. Как я могу сделать мониторинг медленного обслуживания? Я уверен, что есть некоторые инструменты для обнаружения узких мест в любой программе. Я пытался использовать встроенный инструмент профилирования Visual Studio 2010, но он кажется мне настолько сложным и неочевидным, поэтому я разместил свой вопрос здесь.

Ответы [ 2 ]

0 голосов
/ 16 сентября 2011

В вашем сервисе вы можете добавить некоторые свойства, такие как StartTime, EndTime, которые устанавливаются при входе / выходе в ваш метод и возвращаются обратно в объект, который вы доставляете из вашего WCF, и проверяете, что сервис действительно занимает много времени..

Недавно я исследовал "медленный" WCF, который я написал, который был размещен у нашего провайдера, и оказалось, что сами методы были молниеносно (с использованием вышеупомянутого), но первоначальныйвремя запуска службы варьировалось от 20 секунд до 2:10 из-за некоторого параметра конфигурации (который не был доступен через их инструменты удаленного управления).После обращения к провайдеру первоначальный запуск (после его выгрузки) сократился до 3 секунд.Поэтому вам нужно проверить, где находится медленная точка.

0 голосов
/ 16 сентября 2011

Я использовал WCF Storm в прошлом, чтобы профилировать и помогать решать проблемы с производительностью служб WCF.

Вы можете получить пробную версию на 15 дней или одну лицензию примерно за 100 долларов, но это действительно поможет вам диагностировать ваш код.

Также ознакомьтесь с этим вопросом «Как начать работу с профилированием производительности WCF» , чтобы получить дополнительные советы по профилированию ваших услуг

...