Нагрузочные тесты веб-приложений: на какие показатели обращать внимание?

Что я должен отслеживать на сервере приложений во время стресс-теста / нагрузочного теста приложения ASP.NET, размещенного в IIS?

Например, встроенный монитор производительности утилит в Windows имеет огромный список счетчиков, которые я могу отслеживать. Но я даже не знаю, что на самом деле означает половина этих счетчиков? Я знаю, что хочу посмотреть на такие вещи, как память, процессор, сеть ... но это довольно общий вопрос.

Как мне найти проблемную зону?

Какие фишки некоторые из вас, ребята, использовали в прошлом?


person VoodooChild    schedule 03.02.2011    source источник


Ответы (1)


Эти показатели, которые мы отслеживаем, чтобы определить, обслуживаются ли запросы оперативно, а объем линейно масштабируется с приложенной нагрузкой:

  • Запросы в очереди
  • Текущие запросы
  • Выполнение запросов
  • Запросы выполнены
  • Запросов / сек

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

  • Ошибок / сек
  • Необработанных ошибок выполнения / сек

Для мониторинга памяти ВМ мы смотрим на:

  • Размер кучи CLR
  • Генерация CLR 0, 1 и 2 Сборки мусора
  • Процент времени CLR в GC

За условиями блокировки мы следим:

  • Конфликты блокировки CLR
  • Конфликт блокировки CLR / сек
  • Длина очереди конфликтов блокировки CLR

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

person CMerrill    schedule 08.02.2011