Выбрать страницу

Тестирование нагрузки против стресс-тестирования

Прежде чем мы объясним, как определить точку разрыва приложения в платформе LoadView, мы должны сначала описать различия между нагрузочным тестированием и стресс-тестом. Хотя термины часто используются взаимозаменяемо, эти тесты стремятся найти различные результаты.

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

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

Расчет первоначальной нагрузки

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

Во-первых, рассмотрим количество ваших веб-серверов в использовании и количество доступных процессорных ядер. В этом примере мы предположим, что работаем с четырехъядерным веб-сервером, и мы будем использовать начальную точку 25 одновременных пользователей на ядро процессора, то есть 100 одновременных пользователей. Тем не менее, рекомендуется начать с числа 50 процентов ниже, чем рассчитывается отправной точкой, так что работает до 50 одновременных пользователей. С этой отправной точки, и в зависимости от требований к производительности приложения, вы можете увеличить нагрузку в 5 раз или в 10 раз больше.

Выбор кривой нагрузки: платформа LoadView

Платформа LoadView предоставляет пользователям возможность выбора из трех различных вариантов кривой нагрузки.

  • Нагрузка Шаг кривой. Тип теста позволяет сравнивать время отклика под эксплуатационой нагрузкой и при ожидаемой транспортной нагрузке.
  • Кривая на основе цели. Этот тест полезен, когда у вас уже есть предопределенная пропускная способность (цель транзакции), или количество посетителей, которого вы ожидаете на вашем сайте в течение фиксированного промежутка времени, и вы хотите убедиться, что сайт отвечает требованиям.
  • Динамическая регулируемая кривая. Этот тип можно использовать для определения ограничений производительности сайта или для планирования емкости его сервера , изменяя пользовательский трафик вручную во время теста.

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

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

Поиск точки разрыва приложения

Ниже приведены результаты базового стресс-теста HTTP, использующего кривую шага нагрузки, с начальной нагрузкой 12 пользователей в минуту.

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

Для получения дополнительной информации о выполнении стресс-тестов на платформе LoadView, пожалуйста, посетите нашу базу знаний.