2017-01-28 1 views
1

Я - инженер-программист, который стал инженером по автоматизации тестирования, и я пытаюсь изучить тестирование производительности с помощью jmeter, после чего нашел это описание теста нагрузки - «Этот тест в основном используется для тестируя систему под верхней нагрузкой, которая была разработана для работы под ".Как вы знаете, на каком пределе нагрузки вашего сервера

Нелепый вопрос, так как я могу узнать о верхней загрузке нашей системы. Это что-то такое, что ребята узнают? Системный администратор? Это что-то, что я могу проверить, чтобы узнать, насколько это ограничение нагрузки?

ответ

0

Проверка эффективности состоит в проверке нагрузки, которую требует ваша компания.

Не относится к нагрузке до тех пор, пока что-то не сломается. Ваш продукт никогда не сможет попасть туда. Все дело в бизнесе.

Вы можете проверить, например, x request/s для HTTP-запросов, вызовов API и соединений DB.

Стандартные сайты WordPress не могут обрабатывать более 30 запросов/с. Вирусные блоги и коммерческие сайты обычно имеют 50-100 пользователей/с на пике. Ставки, банковские и фондовые сайты ожидают, что 100-500 пользователей/соединений/узел.

0

Обычно приложение должно иметь некоторые нефункциональные требования, а именно:

  • быть в состоянии обслуживать X одновременно работающих пользователей, максимальное время отклика не должно превышать Y мс
  • иметь возможность обрабатывать не менее Z запросов в секунду
  • и т.д.

Таким образом, процесс load testing ставит систему под ожидаемых загрузите и посмотрите, приемлемо ли время ответа, нет ошибок, все работает так, как должно работать, и т. Д. Я также рассмотрел бы Soak Testing, чтобы проверить, как ваше приложение ведет себя при длительной нагрузке (очень полезно для обнаружения утечек памяти) и Stress Testing также определите точку нарушения вашей заявки, см. статью Why ‘Normal’ Load Testing Isn’t Enough для более подробной информации.

Если у вас нет нефункциональных требований, вы можете провести некоторую форму нагрузочного тестирования, начиная с 1 виртуального пользователя и увеличивая нагрузку до тех пор, пока не начнутся ошибки, как только вы определите ближайшее узкое место и проанализируете, может ли это быть исправлено или нет. Если да - исправить и повторить, чтобы увидеть, что является следующей точкой прерывания.

В качестве главного инженера вы ни в коем случае не должны заботиться об этом, максимум, который вы можете сделать, это проверить производительность на стороне клиента, используя, например, YSlow, нагрузочное тестирование - это больше о бэкэнд.

Смежные вопросы