Перфоманс Лаб

нагрузочное тестирование
11 сентября, 2025

Тестирование стриминг сервиса

Время чтения: 6 мин.
11 сентября, 2025
Автор:
И.Баязитов

Команда «Перфоманс Лаб» регулярно работает в условиях сжатых сроков, ограниченных ресурсов и недостаточно четких бизнес-требований.

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

В этом кейсе мы расскажем, как на практике справляемся с такими вызовами. 

О проекте

Клиент:

Крупный российский банк, занимает место в топ-3 кредитных организаций

Продукт:

Инвестиционный форум

Цель:

Максимальная производительность сайта в 30000 RPS

Задачи:

  • Провести тестирование на поиск максимальной производительности плееров
  • Настроить распределенную нагрузку с генераторов в сжатые сроки
  • Выдать рекомендации по выбору плеера
  • Передать компетенции заказчику
архитектура стримминговой системы

Реализация проекта

Для выполнения поставленных задач инженеры компании «Перфоманс Лаб» провели комплексный аудит системы и серию нагрузочных тестов.
01

Аудит системы

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

Настройка распределенной нагрузки на JMeter

Оптимизация и подбор конфигураций нагрузочных станций (на Linux хостах)
03

Сценарии нагрузочного тестирования включали

  • Открытие главной страницы (Целевые показатели: 30000 RPS)
  • Открытие главной страницы с плеером → прогрузка frontend части плеера (Определить максимальную производительность и ключевые показатели, Целевые показатели: 30000 пользователей в потоке)
  • Открытие главной страницы с плеером → прогрузка frontend части плеера → получение первого кадра из потока (Определить максимальную производительность и ключевые показатели, Целевые показатели: 30000 пользователей в потоке)
04

Нагрузочное тестирование

Для подтверждения максимальной производительности в 30000 RPS была организована серия тестов с использованием различных сценариев нагрузки. В результате было установлено, что сайт способен выдерживать заданную нагрузку без значительных потерь в производительности.
05

Выбор видеоплеера

После проведения сравнительных испытаний нескольких популярных видеоплееров (включая COMDI, We.Cloud, NGENIX и YouTube), команда подготовила детальный отчет с рекомендациями по выбору наиболее подходящего варианта. Основными критериями выбора стали.
06

Отчетность и передача знаний

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

Нюансы проекта и наши решения

Проблемы в процессе тестирования

Проблема №1

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

problema 1 testirovaniya strimming servisa

Проблема №2

Столкнулись с неравномерным распределением трафика через Nginx. Нагрузка концентрировалась на отдельных узлах.

Решение: заменили Nginx на физические HAProxy и убрали балансировку с маршрутизатора — перераспределение нагрузки стало стабильным и предсказуемым.

проблема 2 тестирования стримминг сервиса

Некорректные бизнес требования, приводящие к рискам

Как эксперт легко избегает ошибок: всё начинается с правильных вопросов

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

Пример:

Заказчик обращается с запросом:


«Нам нужно 30 000 RPS на стриминговый сервис».

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

На этом этапе нам достаточно задать один уточняющий вопрос:
«Что конкретно имеется в виду под 30 000 RPS?»

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

Вывод:

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

Результаты тестирования

Итоги проекта

Благодаря проведенному аудиту и нагрузочному тестированию:

  • Подтверждена возможность работы сайта при 30 000 RPS;
  • Выбраны наиболее подходящие видеоплееры с рекомендациями по их внедрению;
  • Подготовлен отчет с детальным разбором результатов тестирования;
  • Проведена передача знаний заказчику для дальнейшего мониторинга и оптимизации системы.
Проведенные работы позволили заказчику получить полное представление о текущем состоянии ресурса и необходимые рекомендации для его дальнейшего развития.

По результатам нагрузочного тестирования команда «Перфоманс Лаб» рекомендовала Заказчику решение для доставки контента от одного из российских разработчиков ПО. Платформа успешно выдерживает нагрузку в 100 000 одновременно подключённых пользователей, при этом соблюдая все нефункциональные требования.

Закажите нагрузочное тестирование у тех, кто умеет достигать поставленных целей

Увеличьте производительность вашей системы до максимума и застрахуйте свой бизнес.