Создание тест-плана jmeter – от расчета цепочек до...
DESCRIPTION
Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов. Сербул Александр Руководитель направления контроля качества интеграции и внедрений 1С-Битрикс. Учимся считать нагрузку. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/1.jpg)
Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера
на 5-10 млн. хитовСербул Александр
Руководитель направления контроля качества интеграции и внедрений
1С-Битрикс
![Page 2: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/2.jpg)
Учимся считать нагрузкуНужно проверить, что веб-проект выдержит нагрузку … в чем она, нагрузка, измеряется?
Уникальные посетители в сутки?Хиты к динамике в суткиХиты к статике в сутки
Производительность APIЭкспорты/импорты данных
![Page 3: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/3.jpg)
Пик и общая посещаемость за сутки
За сутки – 1,5 млн. хитов к динамике (по логам)
Среднее в секунду:1,5 млн./86400 = 17
Но на графике в пике видим – 34 запросов/сек
Готовимся к пикам выше среднего – в 2-3 раза. Точнее – смотрим на графиках.
![Page 4: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/4.jpg)
Система работает в штатном режиме?
Не перегружена ли текущая веб-система?
Число ошибок и таймаутов в логах
Перегруженная текущая веб-система может «отбрасывать» запросы
![Page 5: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/5.jpg)
Пользователи и хитыНередко 1 пользователь ~ 10 хитов
Смотрите данные модуля «Веб-аналитика» или данные внешних источников
Можно «прикинуть» ожидаемое число сотрудников компании
Хитов к статике – часто на порядок больше
![Page 6: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/6.jpg)
Цепочки
Куда будут ходить пользователи/сотрудники? Берем из аналитики или предполагаем.
1.1 Главная1.2 Список новостей1.3 Детальная новости1.4 Поиск по сайту1.5 Форум
2.1 Детальная каталога2.2 Авторизация2.3 Корзина2.4 Мастер заказа2.5 Личный кабинет
![Page 7: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/7.jpg)
Цепочки - распределение
Распределяем потоки виртуальных пользователей по цепочкам:
70% - Главная20% - Каталог – Корзина – Мастер заказа5% - Результаты поиска – Описание товара – Корзина5% - Новости – Новость детально
![Page 8: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/8.jpg)
Цепочки – важные моменты
Клиенты должны уметь авторизовываться.
Логины, пароли, Идшники элементов, поисковые слова – лучше сделать разными (из файлов).
Рандомные паузы между хитами.
Загрузить тестовый контент – в каталог, форум и т.п.!
![Page 9: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/9.jpg)
Цепочки – расчетСколько хитов в данной цепочке клиент сделает за сутки?
1.1 ГлавнаяПауза ~ 30 сек1.2 Список новостейПауза ~ 30 сек1.3 Детальная новостиПауза ~ 30 сек1.4 Поиск по сайтуПауза ~ 30 сек-> в начало
Примерно 86400/30 ~ 3к хитов
Подбираем число нагрузочных потоков (вирт. пользователей) в каждой цепочке для получения, допустим, суммарно:5 млн. хитов с сутки
![Page 10: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/10.jpg)
Настройка числа нагруз. потоков
![Page 11: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/11.jpg)
Структура запроса в цепочке
![Page 12: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/12.jpg)
Настройка рандомной паузы
![Page 13: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/13.jpg)
Рандомные страницы
![Page 14: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/14.jpg)
Очистка cookies в конце цепочки
![Page 15: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/15.jpg)
Временные данные – в CSV файлы
Логины/паролиПоисковые фразыИД элементов каталога
![Page 16: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/16.jpg)
Работа с переменными
![Page 17: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/17.jpg)
Работа с переменными
![Page 18: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/18.jpg)
Глобальные переменные
![Page 19: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/19.jpg)
Глобальные переменные
![Page 20: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/20.jpg)
Авторизация
![Page 21: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/21.jpg)
Распределенное тестирование
Читаем мануал: http://jmeter.apache.org/usermanual/remote-test.html
- Централизованное распределение тест-плана по кластеру- Сбор информации с кластера в один лог
Запускаем серверы:JMETER_HOME/bin/jmeter-server
На клиенте “/bin/jmeter.properties”:remote_hosts=127.0.0.1:60001, 127.0.0.1:60002, 127.0.0.1:60003
![Page 22: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/22.jpg)
Распределенное тестирование
jmeter -n -t script.jmx -R server1,server2...
![Page 23: Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов](https://reader030.vdocuments.mx/reader030/viewer/2022033016/56812be6550346895d906282/html5/thumbnails/23.jpg)
Распределенное тестирование1) Создаем нагрузочный кластер из нод JMeter2) Управляем им централизованно из консоли или GUI3) Собираем результаты теста в единый лог-файл для дальшейшего анализа
Пропускная способность сети?
Можно создать ОЧЕНЬ большую нагрузку в десятки миллионов хитов в сутки!