1/23/2015

JMeter: мониторим нагрузку тестируемого сервера

     При выполнении нагрузочного тестирования необходимо помнить, что кроме снятия внешних показателей - количество запросов в секунду, скорости отдачи данных, объема данных etc - очень важно собирать показатели загрузки тестируемого сервера. Это может быть что угодно - начиная от загрузки процессора и заканчивая количеством файлов, которые открыты конкретным процессом.


      Из коробки JMeter не умеет мониторить нагрузку удаленного сервера. Помочь в этом нам может плагин PerfMon Metrics Collector, который входит в стандартный комплект плагинов для JMeter. PerfMon Metrics Collector умеет собирать следующие показатели нагрузки:
  • CPU
  • память
  • дисковый I/O
  • сетевой I/O
  • некоторые переменные внутри Java Virtual Machine (через JMX)
  • метрики протокола TCP
  • файл подкачки
  • пользовательские метрики
Если с встроенными метриками всё понятно и подробнее почитать про их настройки можно в документации, то на пользовательских хотелось бы остановиться немного подробнее. Существует 2 режима сбора пользовательских метрик: TAIL и EXEC. С TAIL всё понятно - указываем имя файла на сервере, где будут появляться новые значения некоторой метрики и через определенные интервалы времени показатели будут считываться из файла. А вот EXEC хранит в себе возможности, которые ограничены лишь вашей фантазией и навыками в программировании на Bash, ведь источником показателей для этой метрики является результат выполнения shell-команды на сервере. Например:

Мониторинг загрузки тестируемого сервера с помощью PerfMon позволит обнаружить узкие места в конфигурации или настройках сервера и позволит сделать выводы о пригодности сервера для работы с определенной нагрузкой.

Комментариев нет:

Отправить комментарий