#jmeter
#jmeter
Вопрос:
У нас есть веб-приложение CRUD. Мне нужно загрузить тестирование веб-приложения, имитируя 1000 одновременных пользователей. я использую jmeter для выполнения нагрузочного теста.
scenario 1 :
- user login
- request a welcome page
Parameters :
Thread Group : no. of users = 100
ramp-up period = 1
loop = 1
вопрос :
- как я могу сделать вывод, что веб-сервер способен принимать 1000 одновременных пользователей?
- если в представлении дерева результатов весь запрос получает статус 200 OK, означает, что веб-сервер способен принимать 1000 одновременных пользователей? или
- если я увеличу число одновременных пользователей до 1200, веб-сервер выйдет из строя.. могу ли я заключить, что веб-сервер, который мы используем, способен принимать максимум <1200 одновременных пользователей.
- какие другие параметры мне нужно искать для нагрузочного теста
Ответ №1:
Вы можете заключить это так,
- Если вы видите результаты всех запросов как статус 200 не только для 1 цикла, но вам нужно запустить тест в течение некоторого времени, скажем, 30 минут или что-то в этом роде (продолжительность может быть определена по коэффициенту стабильности сервера).
Через некоторое время после запуска теста, если результаты начнут сходиться (вы получите стабильное время отклика) без каких-либо ошибок (обычно допустима частота ошибок 1%), вы можете сделать вывод, что ваш веб-сервер способен поддерживать 1000 пользователей для запросов на вход
-
Вы можете увеличить число пользователей до 1200 и повторить попытку, чтобы увидеть масштабируемость сервера (насколько ваш сервер может масштабироваться, используя ту же технику), что даст вам максимальную нагрузку, которую может выдержать ваш сервер. (стресс-тест)
-
Очень важные вещи, которые вы также должны отслеживать при выполнении этих тестов, — это использование вашего сервера. Если ваш сервер испытывает нехватку ресурсов (100% cpu, 100% памяти или сети и т. Д.), То, Вероятно, вам следует снизить количество одновременных пользователей и повторить попытку. обычно загрузка системы не должна превышать 80% на всех счетчиках.
поскольку вы выполняете этот тест только для одного запроса, т.Е. для входа в систему. обычно результаты будут неточными. вы должны протестировать наиболее часто используемые рабочие процессы, которые дадут вам точное представление.
Я надеюсь, что это проясняет сомнения.
Комментарии:
1. Поэтому необходимо отслеживать следующие результаты с 1000 одновременных пользователей «Создать рабочий процесс Обновить рабочий процесс Получить рабочий процесс Удалить рабочий процесс» результат основываясь на приведенных выше результатах, мы можем сделать вывод о возможностях веб-сервера. как измерить процессор и память, у jmeter есть монитор, но как он измеряет процессор [на ядро?].
2. смотрите, для простоты вы можете разделить свои рабочие процессы на группы и тестировать по отдельности или найти наиболее часто используемые рабочие процессы и протестировать с ними, что является наилучшим подходом. Для мониторинга присутствуют несколько инструментов, для linux — присутствует sar, windows — perfmon, и если у вас распределенная среда, то, вероятно, вы можете использовать ganglia, munin, graphite и т.д.