Назад | Перейти на главную страницу

Тестирование одновременных пользователей с помощью Jmeter

Если мне нужно выполнить нагрузочное тестирование приложения для 40 000 пользователей в час со средним временем, затрачиваемым каждым пользователем на одну минуту, то каким должен быть мой подход к тестированию?

Будет ли правильным тестом запуск теста для 666 потоков / пользователей (40000/60 = 666) с периодом увеличения в 1 минуту и ​​запуском JMeter в течение 5 минут?

Спасибо

Это будет приемлемый тест, но не все. Как вы упомянули, 1 минута - это средний время, однако это не обязательно означает, что каждый пользователь потратит 1 минуту. Если 10% пользователей решат потратить 5 минут, у вас будет 4000 пользователей на 5 минут, и этот сценарий не распространяется на ваш случай.

Так что проверьте свое приложение доступ к журналам или загляните в Инструмент APM чтобы определить реальный образец нагрузки и настроить тест JMeter для его репликации.

Также обычно люди ищут не только воспроизводящую текущую (или ожидаемую) производственную нагрузку, они также заинтересованы в

  • что точка насыщения приложения, то есть сколько пользователей оно может обслуживать, обеспечивая максимальную производительность (до того, как время отклика начнет увеличиваться)
  • какова максимальная нагрузка, с которой приложение может справиться до того, как начнут возникать ошибки или время отклика превысит допустимые значения
  • какой компонент самый медленный (узкое место) и что нужно сделать, чтобы его удалить
  • восстанавливается ли приложение, когда нагрузка возвращается в нормальное состояние, или оно остается в "сломанном" непригодном для использования состоянии
  • что будет если оставить приложение под длительной нагрузкой (несколько часов, ночь, несколько дней)

Поэтому я бы порекомендовал рассмотреть и другие типы тестирования, кроме нагрузочного, т. Е. Провести нагрузочное тестирование определить предел прочности, Замачивание Тестирование чтобы проверить, нет ли проблем, связанных с большой продолжительностью нагрузки, например утечки памяти, Спайковое тестирование когда нагрузка внезапно увеличивается с нуля до максимальной, которую в мгновение ока видели онлайн-пользователи, Тестирование масштабируемости (если ваше приложение масштабируется - вы можете узнать, действительно ли оно масштабируется, и каков фактор замедления при масштабировании). Проверить Why «Нормального» нагрузочного тестирования недостаточно статью для более подробного объяснения вышеупомянутых типов тестирования производительности и причин, по которым вам необходимо их применять.