SoftPoint Traffic Simulator   

Технология записи и идентичного воспроизведения трафика SQL сервера, как инструмент для нагрузочного и функционального тестирования



Нагрузочное и функциональное тестирование, сложности реализации

Фактически, сложность создания полноценной модели нагрузочного и функционального тестирования заключается в трудоемкости и нетривиальности решаемой задачи, а именно: 

  1. Анализ информационного потока. На подготовительном этапе необходимо проанализировать информационный поток в системе, желательно в пиковые моменты нагрузки. Без средств онлайн мониторинга и фиксации полученных данных задача переходит в разряд нетривиальных.
  2. Нагрузочная модель. Если удалось провести полноценный анализ информационного потока, разложить его на составляющие (пользователи, группы запросов, исполняемые модули системы и пр.), то следующим этапом выступает создание нагрузочной модели: разработка сценариев и набора эмуляторов, «роботов», скриптов и пр., что требует привлечение квалифицированных программистов.
  3. Системный анализ. Завершающим этапом проведения нагрузочного тестирования становится анализ полученной статистики. Предполагается, что имеются требуемые средства мониторинга для сбора статистической информации, но также потребуется интерпретировать полученную информацию, чтобы составить обоснованное заключение по результатам проведенных тестов.

SoftPoint Traffic Simulator, технология для нагрузочных и функциональных тестов

Компания "SoftPoint" разработала собственный программный продукт SoftPoint Traffic Simulator, как внешнее средство SQL сервера, который позволяет:

  1. Записывать трафик продуктивной системы, при этом практически ее не нагружая.
  2. Воспроизводить записанный трафик, практически идентично, как в однопользовательском режиме, так и с учетом много поточности и конкуренции, на другой версии MSSQL сервера, другом оборудовании, при других настройках.
  3. Сравнить получаемые данные по трафику с точностью до размера, получить непредсказуемые ошибки, нестандартное поведение системы. В результате этого появляется возможность автоматизировано провести как нагрузочное, так и функциональное тестирование.
  4. Автоматизировано сравнивать данные в БД на оригинале и в копии.

 SoftPoint Traffic Simulator, архитектура системы

В составе технологии SoftPoint Traffic Simulator 5 компонент:

SoftPoint Traffic Recorder: отвечает за запись трафика, проходящего через сервер СУБД. Инсталлируется в виде сервиса на сервер СУБД. Реализован в двух вариантах, в виде прокси заглушки или в виде перехвата информации через драйвер устройства.

 

SoftPoint Traffic Compiler: отвечает за анализ и переработку собранных данных. Устанавливается на тестовом сервере на котором будут проводится функциональные и нагрузочные тесты. В функциональность данного сервиса входит:

замена текста запросов;

определение динамических параметров вызовов;

автоматическое определение «плавающих», гетерогенных параметров;

настройка правил исключений и замен для «плавающих» параметров;

настройка правил для подключения сессий на тестовом стенде (в связи с протоколами безопасности нет возможности по трассе установить соединение с СУБД аналогичное оригиналу).

 

SoftPoint Traffic Player: отвечает за воспроизведение и координацию записанного и обработанных трасс. Отвечает за меж потоковое взаимодействие.

 

 

SoftPoint Monitoring Service: отвечает за сбор и анализ параметров производительности с рабочей и тестовой среды. Устанавливается в виде сервисов на рабочем и тестовом стенде.

 

SoftPoint Reporting Service: отвечает за анализ оригинальных трасс с собранными на тестовом стенде. Выдает разницу в результатах рекордсетов, ошибок выполнения, разницу в данных. Выдает разницу в планах выполнения, времени выполнения, времени ЦПУ, объему логических чтений.В том числе собирает MSSQL трассы на тестовом стенде.