Каково значение полноканального стресс-теста, который так любят крупные производители? Подробный сравнительный анализ четырех решений для стресс-тестирования
Каково значение полноканального стресс-теста, который так любят крупные производители? Подробный сравнительный анализ четырех решений для стресс-тестирования

Полный стресс-тест ссылки?

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

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

Основной процесс Основной процесс реализации полноканального стресс-тестирования выглядит следующим образом:

1 Значение полноканального стресс-тестирования

На изображении выше представлена ​​топологическая диаграмма взаимоотношений основных бизнес-приложений Taobao в 2012 году. Она не включает другие неосновные бизнес-приложения. Так называемый основной бизнес — это бизнес, связанный с транзакциями и деньгами. Возможно, вы не сможете ясно увидеть эту картину, но это нормально, поскольку в то время существовало так много приложений Alibaba и запутанных взаимосвязей между приложениями, что разобраться в них вручную было невозможно.

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

Техническая перспектива: снижение затрат, повышение доступности услуг и техническое обучение. & Работа в команде & Быстрое реагирование; бизнес-перспектива: улучшайте взаимодействие с пользователем, используйте технологии для лучшего обслуживания бизнеса и создания большей ценности для бизнеса.

2 Анализ плана стресс-тестирования ссылок

2.1 Проверка давления в автономном режиме

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

2.2 Стресс-тест предпроизводственной среды

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

2.3 Испытание дренажного давления

В связи с непрерывным ростом объема бизнеса, учитывая точность результатов автономных испытаний, мы начали пробовать испытания под давлением на производстве. Этот метод испытания под давлением называется испытанием на отводящее давление. На самом деле, не существует реального смоделированного испытания под давлением усиления, а есть способ повысить вычислительную мощность одной машины за счет сокращения количества кластеров онлайн-сервисов. Например, если кластер бизнес-системы имеет 100 узлов, 90 из них будут моделироваться в автономном режиме или трафик будет перенаправляться на оставшиеся 10 узлов для стресс-тестирования.

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

2.4 Полноканальный стресс-тест

С ростом популярности микросервисной архитектуры сервисы делятся по разным измерениям, и один запрос часто включает в себя несколько сервисов. Интернет-приложения создаются на основе разных наборов программных модулей. Эти программные модули могут разрабатываться разными командами, реализовываться с использованием разных языков программирования и распространяться на тысячах серверов в различных центрах обработки данных. Поэтому нам нужны инструменты, которые помогут понять поведение системы и проанализировать проблемы с производительностью, чтобы в случае сбоя мы могли быстро обнаружить и решить проблему. Однако ее недостатки также очевидны: она требует высокой технической сложности и необходимости ее преодоления. Технические проблемы, такие как окрашивание, изоляция данных, изоляция журналов, риск автоматического выключателя и т. д., находятся в производственной среде для стресс-тестирования, поэтому риск плохого контроля также очень высок.

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

2.5 Сравнение четырех решений для стресс-тестирования

Эффект стресс-теста

техническая трудность

Стоимость машины

Стоимость обслуживания

риск

Автономное испытание давлением

Разница

Низкий

Низкий

Низкий

никто

Предпроизводственный стресс-тест

хороший

Низкий

высокий

высокий

середина

Испытание дренажного давления

Разница

середина

никто

Низкий

высокий

Полный стресс-тест ссылки

хороший

высокий

никто

Низкий

высокий

3. Обзор полноканального стресс-тестирования

3.1 Что такое полноканальное стресс-тестирование?

На основе реальных производственных бизнес-сценариев и производственных сред моделируйте массовые запросы пользователей и данные для стресс-тестирования всей бизнес-цепочки (обычно основной бизнес-цепочки) и непрерывно оптимизируйте процесс.

3.2 Какая проблема решена?

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

3.2.3 Точное планирование мощности
3.2.3.1 Зачем необходимо планирование мощности

Когда добавлять или удалять машины, чтобы обеспечить стабильность системы и сэкономить средства?

Цель планирования мощности — позволить каждой бизнес-системе четко знать: когда следует добавлять машины, а когда следует сокращать их? Сколько машин необходимо подготовить для масштабных сценариев продвижения, таких как Double 11, чтобы обеспечить стабильность системы и сэкономить затраты?

3.2.3.2 Четыре этапа планирования мощности
  1. Этап бизнес-прогнозирования: с помощью исторического анализа проанализируйте, какой объем трафика будет иметь бизнес в определенный момент времени в будущем.
  2. Этап оценки мощности системы: предварительный расчет того, сколько машин необходимо выделить для каждой системы
  3. Этап точной настройки мощности: используйте ссылки «Все стресс-тесты», чтобы моделировать поведение пользователей во время крупных продаж, а также точно настраивать уровень мощности всего сайта, одновременно проверяя возможности сайта.
  4. Этап управления потоком: настройка порогов ограничения тока и других защитных мер для системы.,Не допускать превышения фактического объема бизнеса над предполагаемым объемом бизнеса,Метод системникто обеспечивает нормальный этап управления Служитьпоток: настройте пороги ограничения тока и другие меры защиты системы для системникто.,Не допускать превышения фактического объема бизнеса над предполагаемым объемом бизнеса,системаниктозакон обеспечивает нормальный Служить
3.3 Выполнение полноканального мониторинга производительности

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

  • Обеспечьте стабильность системы: можно заранее спрогнозировать различные проблемы в системе.,Предварительно смоделируйте сценарии параллелизма,Будьте готовы к опасности.
  • Отслеживание ссылок и быстрое обнаружение неисправностей. Информацию об ошибках можно быстро найти через цепочку вызовов в сочетании с бизнес-журналами.
  • Точная оценка мощностей: возможность определить области, наиболее нуждающиеся в расширении мощностей, что помогает компании удовлетворить бизнес-требования с наименьшими затратами.
  • Проверка реальной производительности. Реальную производительность можно проверить в самых реалистичных условиях производственной среды.
  • данныеанализировать,Оптимизируйте ссылки: вы можете получить путь поведения пользователя,Сводный анализ используется во многих бизнес-сценариях.
3.4 Как провести полноканальное стресс-тестирование
3.4.1 Обзор бизнес-модели
  • Во-первых, необходимо разделить основной и непрофильный бизнес.,Подтвердите, на какие бизнес-сценарии и модули нацелен пиковый потоквысокий.,Сделайте целенаправленную подготовку к расширению.
  • Разберитесь с внешним интерфейсом: используйте метод MOCK (симуляция), чтобы сделать перегородки.
  • Никогда не загрязняйте обычные данные. Тщательно разбирайтесь в каждом аспекте обработки данных, чтобы гарантировать mock Результаты обработки данных не будут записаны в обычную библиотеку.
3.4.2 Построение модели данных
  • Подлинность и доступность данных: эквивалентная копия пакета данных может быть полностью перенесена из производственной среды.,В качестве основы для данных стресс-тестирования,Затем на основе основных данных,Анализируя исторические тенденции роста объема данных,Предполагаемый текущий возможный объем данных
  • данныеизоляция:Десять миллионов Никогда не загрязняйте обычные данные: тщательно разбирайтесь в каждом аспекте обработки данных.,Вы можете рассмотреть возможность обработки изоляции с помощью данных испытаний под давлением.,Упасть в теневой свод,Имитация предметов и других средств,Чтобы предотвратить загрязнение данных
3.4.3 Выбор инструмента измерения давления

Используйте распределенное стресс-тестирование для имитации пользовательских запросов. В настоящее время существует множество инструментов с открытым исходным кодом, которые могут обеспечить распределенное стресс-тестирование, например JMeter, nGrinder, Locust и т. д.

Знакомство с сервисным модулем

Теперь мы представим и продемонстрируем общий бизнес

Оригинальный текстЧуаньчжи Образование Долина ЭрудитовОпубликовано преподавательско-исследовательским коллективом,Вторжение и удаление!

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose