Нагрузочное моделирование - моделирование поведения сервисов под нагрузкой#

Контекст#

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

Компании могут сталкиваться с задачей моделирования поведения сервисов под нагрузкой без необходимости проведения дорогостоящих и ресурсоемких реальных нагрузочных тестов. Workload Digital Twin (далее WLDT) позволяет создать цифровой двойник сервиса и провести виртуальное нагрузочное тестирование.

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

Проблема#

Отсутствие механизма нагрузочного моделирования приводит к следующим проблемам:

  • Ручное проведение нагрузочных тестов требует выделения ресурсов тестовой инфраструктуры, времени и специальных знаний в области нагрузочного тестирования.

  • Отсутствие возможности оперативного тестирования при изменениях в архитектуре - при внесении изменений в архитектуру требуется заново проводить полный цикл нагрузочного тестирования.

  • Ограниченная покрытость сценариев - реальные нагрузочные тесты часто охватывают лишь небольшой набор сценариев из-за ограничений по времени и ресурсам.

Решение#

Для решения вышеуказанных проблем предлагается использовать паттерн нагрузочного моделирования на основе компонента WLDT.

Необходимое решение:

  1. Использовать сервиса sytester компонента WLDT, который позволяет моделировать поведение сервисов под нагрузкой на основе цифрового двойника.

  2. Провести виртуальное тестирование (при помощи UI WLDT) без воздействия на реальную инфраструктуру - все тесты проводятся на основе математических моделей.

Примечание: подробнее ознакомиться с инструкцией по работе с нагрузочным моделированием можно в документе «Руководство пользователя по использованию UI цифрового двойника» в разделе Проведение нагрузочного тестирования.