Upload
ulla-sears
View
103
Download
0
Embed Size (px)
DESCRIPTION
Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера на 5-10 млн. хитов. Сербул Александр Руководитель направления контроля качества интеграции и внедрений 1С-Битрикс. Учимся считать нагрузку. - PowerPoint PPT Presentation
Citation preview
Создание тест-плана jmeter – от расчета цепочек до нагрузочного кластера
на 5-10 млн. хитовСербул Александр
Руководитель направления контроля качества интеграции и внедрений
1С-Битрикс
Учимся считать нагрузкуНужно проверить, что веб-проект выдержит нагрузку … в чем она, нагрузка, измеряется?
Уникальные посетители в сутки?Хиты к динамике в суткиХиты к статике в сутки
Производительность APIЭкспорты/импорты данных
Пик и общая посещаемость за сутки
За сутки – 1,5 млн. хитов к динамике (по логам)
Среднее в секунду:1,5 млн./86400 = 17
Но на графике в пике видим – 34 запросов/сек
Готовимся к пикам выше среднего – в 2-3 раза. Точнее – смотрим на графиках.
Система работает в штатном режиме?
Не перегружена ли текущая веб-система?
Число ошибок и таймаутов в логах
Перегруженная текущая веб-система может «отбрасывать» запросы
Пользователи и хитыНередко 1 пользователь ~ 10 хитов
Смотрите данные модуля «Веб-аналитика» или данные внешних источников
Можно «прикинуть» ожидаемое число сотрудников компании
Хитов к статике – часто на порядок больше
Цепочки
Куда будут ходить пользователи/сотрудники? Берем из аналитики или предполагаем.
1.1 Главная1.2 Список новостей1.3 Детальная новости1.4 Поиск по сайту1.5 Форум
2.1 Детальная каталога2.2 Авторизация2.3 Корзина2.4 Мастер заказа2.5 Личный кабинет
Цепочки - распределение
Распределяем потоки виртуальных пользователей по цепочкам:
70% - Главная20% - Каталог – Корзина – Мастер заказа5% - Результаты поиска – Описание товара – Корзина5% - Новости – Новость детально
Цепочки – важные моменты
Клиенты должны уметь авторизовываться.
Логины, пароли, Идшники элементов, поисковые слова – лучше сделать разными (из файлов).
Рандомные паузы между хитами.
Загрузить тестовый контент – в каталог, форум и т.п.!
Цепочки – расчетСколько хитов в данной цепочке клиент сделает за сутки?
1.1 ГлавнаяПауза ~ 30 сек1.2 Список новостейПауза ~ 30 сек1.3 Детальная новостиПауза ~ 30 сек1.4 Поиск по сайтуПауза ~ 30 сек-> в начало
Примерно 86400/30 ~ 3к хитов
Подбираем число нагрузочных потоков (вирт. пользователей) в каждой цепочке для получения, допустим, суммарно:5 млн. хитов с сутки
Настройка числа нагруз. потоков
Структура запроса в цепочке
Настройка рандомной паузы
Рандомные страницы
Очистка cookies в конце цепочки
Временные данные – в CSV файлы
Логины/паролиПоисковые фразыИД элементов каталога
Работа с переменными
Работа с переменными
Глобальные переменные
Глобальные переменные
Авторизация
Распределенное тестирование
Читаем мануал: 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
Распределенное тестирование
jmeter -n -t script.jmx -R server1,server2...
Распределенное тестирование1) Создаем нагрузочный кластер из нод JMeter2) Управляем им централизованно из консоли или GUI3) Собираем результаты теста в единый лог-файл для дальшейшего анализа
Пропускная способность сети?
Можно создать ОЧЕНЬ большую нагрузку в десятки миллионов хитов в сутки!
Спасибо за внимание! Вопросы?Александр Сербул[email protected] AlexSerbul