Большой объем пользователей, производственный веб-сервер испытывает проблемы с производительностью, сервер БД работает нормально.Как найти бутылочное горлышко - PullRequest
0 голосов
/ 09 декабря 2011

Мы столкнулись с рядом проблем с производительностью при большом объеме пользователей с нашим приложением asp.net на производственных серверах. База данных sql работает нормально. Я подозреваю, что проблема связана с механизмом синхронизации и блокировки потоков (оператор c # lock).

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

Спасибо,

1 Ответ

0 голосов
/ 09 декабря 2011

Одним из способов является использование счетчиков производительности - см.

Вы также можете использовать трассировка ASP.NET , чтобы увидеть, на каких событиях вы теряете время.В этом отношении вы можете использовать свою пользовательскую регистрацию через приложение, чтобы увидеть, на что вы тратите время - однако, это требует изменения вашего кода.Трассировка ASP.NET позволит вам использовать существующий код для просмотра времени, потраченного на различные события жизненного цикла запросов ASP.NET.

Наконец, с точки зрения профилирования вы можете использовать такие инструменты, как jetBrains dotTrace или Redgate ANTS Profiler .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...