57  /  97

Распределенное тестирование

Просмотров: 18722
Дата последнего изменения: 06.07.2023
Сложность урока:
2 уровень - несложные понятия и действия, но не расслабляйтесь.
1
2
3
4
5

Jmeter Это инструмент для проведения нагрузочного тестирования, разрабатываемый Apache Software Foundation.

Интересна возможность создания большого количества запросов с помощью нескольких компьютеров при управлении этим процессом с одного из них. Архитектура, поддерживающая плагины сторонних разработчиков, позволяет дополнять инструмент новыми функциями.

В программе реализованы механизмы авторизации виртуальных пользователей, поддерживаются пользовательские сеансы. Организовано логирование результатов теста и разнообразная визуализация результатов в виде диаграмм, таблиц и т. п.

Подробнее...
умеет создавать огромную нагрузку в десятки миллионов хитов в сутки. Так как программа написана на Java, то узким местом для создания большой нагрузки на проект может быть как железо нагрузочной машины, так и пропускающая способность сетей передачи данных.

Поэтому для создания огромной нагрузки в десятки миллионов хитов можно использовать распределённую нагрузку, кластер из нескольких машин:

  1. Запускается на каждом сервере:
    JMETER_HOME/bin/jmeter-server
    
  2. Создается remote port-forwarding c серверов кластера на управляющий сервер:

  3. т.е пробрасываются рабочие порты Jmeter, который запущен на машинах кластера, на порты управляющей машины (например 60001, 60002, 60003 и т.д.).

  4. На управляющей машине в /bin/jmeter.properties указываются «виртуальные» серверы кластера, которые получились после проброса портов с машин кластера, участвующих в распределенном тестировании:
    remote_hosts=127.0.0.1:60001, 127.0.0.1:60002, 127.0.0.1:60003
    
  5. Далее в Jmeter на управляющем сервере запускается удаленное тестирование (Run - Remote Start), при этом управляющий сервер передает план тестирования на остальные серверы кластера:

    Также для запуска не через GUI-интерфейс Jmeter можно воспользоваться консольной командой:

    jmeter -n -t script.jmx -R server1,server2...
    
    где:
    script.jmx – название файла с планом тестирования;
    server1, server2 – адреса серверов кластера.
  6. Результаты нагрузочного теста собираются в единый лог-файл для дальнейшего анализа.

Примечание: Более подробную документацию по распределенной нагрузке с помощью Jmeter можно прочитать на сайте разработчика.



1
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии