Когда количество сервисов увеличивается до определенной степени, вероятность возникновения проблем увеличивается.Теперь используются различные общие архитектурные методы и методы высокой доступности, чтобы повысить доступность системы и предоставить пользователям лучший опыт. иСтресс-тест с полной ссылкой эквивалентен физическому осмотру службы, чтобы понять текущее состояние системы.
Определение: На основе онлайн-среды и реальных бизнес-сценариев вся системная связь подвергается стресс-тестированию путем имитации массовых пользовательских запросов.
Цель:
- Проверка стабильности новых функций
- Проверка стабильности и масштабируемости сервиса в условиях пикового трафика
- Более точные оценки емкости для онлайн-сервисов
- Найдите узкие места в системе и оптимизируйте
Стандартный предел испытаний под давлением
- нагрузка не превышает (машинные ядра * 0,6)
- Трафик сетевой карты не превышает 0,6 емкости сетевой карты, если он превышает, задержка может быть относительно большой.
- Тайм-аут запроса не превышает 1/100 000 от общего количества запросов
- QPS не ниже расчетных 85%, иначе его нужно оптимизировать, либо дать разумное объяснение
Решение для стресс-тестов
Чтобы имитировать более реалистичную среду, машина для стресс-тестирования настраивается с той же конфигурацией, что и онлайн-машина, и развертывается в соответствии с ситуацией развертывания онлайн-машины. Данные измерения давления должны максимально использовать реальные онлайн-данные.
Вариант первый
Стресс-тестирование мультиплексной онлайн-среды в периоды низкой пиковой нагрузки, например, в 3 часа ночи, воспроизведение запросов на чтение, запросы на запись не могут быть подвергнуты стресс-тестированию, поскольку запросы на запись приведут к загрязнению данных.
Стресс-тест можно проводить в локальной ежедневной среде или в онлайн-среде:
-
Ежедневная среда: требования низкие.Если вы хотите, чтобы эффект был реальным, вы можете построить те же вспомогательные средства, что и онлайн-сервис.Недостаток в том, что стоимость высока.
-
Онлайн-среда: онлайн-среда полностью адаптирована для измерения устойчивости машины к давлению, и трафик постепенно распределяется на все меньше и меньше серверов.Наблюдайте более 10 минут до предела обработки сервера.
- Требуется мощная платформа для испытаний под давлением
- Система стереоскопического мониторинга
- Платформа управления услугами
- Вы можете принять участие в стресс-тестировании систем крупных компаний по полной ссылке, которые указаны в справке в конце статьи.
Инструмент повторного использования трафика:TCPcopy
Вариант 2
Схему 1 сложно нагрузить весь кластер, и легко обобщить, и невозможно оценить реальную производительность системы. Если вы хотите провести полноценный стресс-тест:
-
Создавайте как можно больше реальных данных
-
Реальная среда линии испытаний под давлением
-
Основная технология
-
Прозрачная передача идентификации испытаний под давлением
- Пересекатьнить: переменная в родительском потоке ThreadLocal из InheritableThreadLocal передается дочернему потоку, что обеспечивает передачу идентификатора испытания под давлением.
- Пересекатьпроцесс: Хранится в заголовке запроса для идентификации.
-
Служба стресс-тестирования изолирована, и стресс-тест не может повлиять на обычную службу.
- Создайте группу стресс-тестов для всей ссылки онлайн в соответствии с бизнес-требованиями и изолируйте партию машин для стресс-тестирования.При вводе запроса запрос может быть разделен
-
Изоляция данных измерения давления, не влияет на реальные данные
-
Используйте теневые таблицы для изоляции данных, используйте одну и ту же базу данных в сети, но записывайте данные в другую «теневую таблицу» при записи данных.
-
Наконец
В приложении много реальных кейсов интернет-компаний, можно изучить вместе
Ссылаться на
- Практика полноценной платформы стресс-тестирования (Quake) в Meituan
- Практика стресс-тестирования Didi с полной ссылкой
- Стресс-тест полной ссылки Youzan
- Ali промежуточное ПО — полносвязное оружие стресс-тестирования
- Стресс-тест полной ссылки JD.com
- Стресс-тест полной ссылки на логическое мышление
- Стресс-тест полной ссылки Ele.me