Важность базового тестирования по SLA
Почему мы сравниваем результаты теста производительности с базовой линией, если у нас уже есть SLA?
Как они будут связаны, например:
- Время отклика транзакции в основном тесте составляет 3 секунды.
- SLA для той же транзакции составляет 5 секунд
- Базовое значение для этой транзакции составило 2 секунды.
Как сравнить это?
2 ответа
Если время истекло, у вас возникла критическая производственная проблема, которую необходимо устранить.
Если время превышает базовый уровень - ваш сервер страдает от снижения производительности, и его необходимо проанализировать, но в меньшей степени
Подробнее в тестировании производительности:
Любое действие пользователя, когда время отклика кажется выше ожидаемого, может быть отслежено, отслежено и проверено, чтобы определить, являются ли они неэффективными.
- По мере увеличения рабочей нагрузки тестер производительности может посмотреть, как время отклика транзакций отклоняется от базовой линии при увеличении рабочей нагрузки.
На этот вопрос сложно ответить - являетесь ли вы получателем SLA (так как в вашей системе используется внешняя система с SLA) или вам нужно гарантировать SLA?
Обычно люди используют "базовый уровень" для обозначения приложения в том виде, как оно есть сейчас, работающего в типичных условиях и при типичной нагрузке.
Как правило, SLA времени отклика включает в себя верхние пределы нагрузки или какую-то коммерческую лестницу - гарантирование времени отклика для неограниченного трафика часто невозможно без дополнительных финансовых ресурсов.
Если ваш первый тест производительности показывает, что фактическое время отклика выше, чем базовое значение, это означает, что вы либо не согласны с "типичными" условиями, либо превысили эти типичные условия, либо что производительность приложения ухудшилась с момента установления базового уровня, Это важная информация.
В общих чертах, время отклика и загрузка не имеют линейной зависимости - если время отклика составляет 1 секунду для 100 пользователей, обычно это не 10 секунд для 1000 пользователей. Вместо этого время отклика имеет тенденцию расти очень медленно с нагрузкой, пока вы не столкнетесь с узким местом, и в этот момент оно очень резко возрастает.
Обычно я использую тестирование производительности, чтобы исследовать эти узкие места, чтобы я мог решить, насколько они соответствуют моим желаемым характеристикам производительности, и решить, как устранить это узкое место еще дальше.
Стоит также отметить, что большинство систем имеют несколько узких мест, а самый медленный элемент определяет общие характеристики производительности. Таким образом, даже если у вас есть SLA для 5-секундных транзакций в одной части вашей архитектуры, могут быть другие части, которые работают медленнее (или быстрее достигают своего узкого места).
Итак, почему вы сравниваете свои нагрузочные тесты с базовыми линиями, даже если у вас есть SLA?
- Убедитесь, что базовая линия все еще действительна.
- Убедитесь, что вы понимаете общие характеристики производительности и можете превышать SLA в других частях системы.
- Убедитесь, что вы можете достичь SLA