1 / 24

Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов

Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов. Сербул Александр Руководитель направления контроля качества интеграции и внедрений 1С-Битрикс. Учимся считать нагрузку.

ulla-sears
Télécharger la présentation

Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластерана 5-10 млн. хитов Сербул Александр Руководитель направления контроля качества интеграции и внедрений 1С-Битрикс

  2. Учимся считать нагрузку Нужно проверить, что веб-проект выдержит нагрузку … в чем она, нагрузка, измеряется? Уникальные посетители в сутки? Хиты к динамике в сутки Хиты к статике в сутки Производительность API Экспорты/импорты данных

  3. Пик и общая посещаемость за сутки За сутки – 1,5 млн. хитов к динамике (по логам) Среднее в секунду:1,5 млн./86400 = 17 Но на графике в пике видим – 34 запросов/сек Готовимся к пикам выше среднего – в 2-3 раза. Точнее – смотрим на графиках.

  4. Система работает в штатном режиме? Не перегружена ли текущая веб-система? Число ошибок и таймаутов в логах Перегруженная текущая веб-система может «отбрасывать» запросы

  5. Пользователи и хиты Нередко 1 пользователь ~ 10 хитов Смотрите данные модуля «Веб-аналитика» или данные внешних источников Можно «прикинуть» ожидаемое число сотрудников компании Хитов к статике – часто на порядок больше

  6. Цепочки Куда будут ходить пользователи/сотрудники?Берем из аналитики или предполагаем. 1.1 Главная 1.2 Список новостей 1.3 Детальная новости 1.4 Поиск по сайту 1.5 Форум 2.1 Детальная каталога 2.2 Авторизация 2.3 Корзина 2.4 Мастер заказа 2.5 Личный кабинет

  7. Цепочки - распределение Распределяем потоки виртуальных пользователей по цепочкам: 70% - Главная 20% - Каталог – Корзина – Мастер заказа 5% - Результаты поиска – Описание товара – Корзина 5% - Новости – Новость детально

  8. Цепочки – важные моменты Клиенты должны уметь авторизовываться. Логины, пароли, Идшники элементов, поисковые слова – лучше сделать разными (из файлов). Рандомные паузы между хитами. Загрузить тестовый контент – в каталог, форум и т.п.!

  9. Цепочки – расчет Сколько хитов в данной цепочке клиент сделает за сутки? 1.1 Главная Пауза ~ 30 сек 1.2 Список новостей Пауза ~ 30 сек 1.3 Детальная новости Пауза ~ 30 сек 1.4 Поиск по сайту Пауза ~ 30 сек -> в начало Примерно 86400/30 ~3кхитов Подбираем число нагрузочных потоков (вирт. пользователей) в каждой цепочке для получения, допустим, суммарно:5 млн. хитов с сутки

  10. Настройка числа нагруз. потоков

  11. Структура запроса в цепочке

  12. Настройка рандомной паузы

  13. Рандомные страницы

  14. Очистка cookies в конце цепочки

  15. Временные данные – в CSV файлы Логины/пароли Поисковые фразы ИД элементов каталога

  16. Работа с переменными

  17. Работа с переменными

  18. Глобальные переменные

  19. Глобальные переменные

  20. Авторизация

  21. Распределенное тестирование • Читаем мануал: 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

  22. Распределенное тестирование jmeter -n -t script.jmx -R server1,server2...

  23. Распределенное тестирование 1) Создаем нагрузочный кластер из нодJMeter 2) Управляемим централизованноиз консоли или GUI 3) Собираем результаты теста в единый лог-файл для дальшейшего анализа Пропускная способность сети? Можно создать ОЧЕНЬ большую нагрузку в десятки миллионов хитов в сутки!

  24. Спасибо за внимание! Вопросы? Александр Сербулserbul@1c-bitrix.ruAlexSerbul

More Related