Кто-нибудь знает какой-нибудь хороший инструмент, который я могу использовать для проведения стресс-тестов на потоковом сервере видео? Мне нужно проверить, насколько хорошо мой сервер обрабатывает 5000+ соединений.
Как стресс-тест потокового видео сервера?
Ответ 1
Один из вариантов - использовать VLC. Вы можете указать URL-адрес в командной строке. (подробнее см. здесь). Затем вы можете написать краткую оболочку script, чтобы открыть все 5000 соединений.
например. следующий perl script (очень быстрый взлом - проверка перед запуском, может вызвать взрывы и т.д.)
$i = 0;
$myurl = "udp://someurl";
@cmdline = ("/usr/bin/vlc", "");
for( $i = 1; $i <= 5000; $i++ )
{
if( $pid = fork )
{
# parent - ignore
}
elsif( defined $pid )
{
$cmdline[1] = sprintf "%s:%d", $myurl, $i;
exec(@cmdline);
}
# elseif - do more error checking here
}
Если ваш потоковой видеосервер выполняет многоадресную рассылку, должно быть достаточно, чтобы открыть сокеты и сделать их членами ваших 5000 многоадресных групп (не обязательно ничего делать с потоком. Не фактически декодируя поток, вы уменьшите проблемы с производительностью на клиенте конец).
Я не знаю никаких инструментов, которые сделают это для вас, но если вы собираетесь писать свою собственную утилиту, вы можете начать здесь для деталей.
edit: Второй вариант предполагает, что ОС на вашем клиентском компьютере имеет возможность многоадресной рассылки. Я упоминаю, что, поскольку (из памяти) ядро Linux не по умолчанию, и я хотел бы сохранить вам эту боль.: -)
Легкий способ рассказать (опять же в Linux) - проверить наличие /proc/net/igmp
Ответ 2
начать загрузку 5000+ файлов одного типа с разными подключениями. На самом деле им не нужно их воспроизводить, потому что, по сути, клиентский видеоплеер, flash, медиаплеер Windows и т.д. Будут просто загружать. Поэтому, если сервер может обрабатывать 5000+ загрузок, все будет в порядке. Моя ставка заключается в том, что ваша пропускная способность выдается перед сервером.
Ответ 3
Для инфраструктуры вы можете использовать JMeter SAAS или собственный облачный сервер для преодоления возможных сетевых проблем из вашего инжектора.
Чтобы воспроизвести пользовательский интерфейс и иметь драгоценные показатели о пользовательском интерфейсе, вы можете использовать Apache JMeter + this коммерческий плагин, который реалистично имитирует поведение игроков без каких-либо скриптов:
- Apple HTTP Live Streaming
- MPEG-DASH Потоковая передача
- Плавное потоковое видео
Этот плагин также обеспечивает возможность моделирования Адаптивное потоковое битрейт
Отказ от ответственности: мы за развитием этого решения
Ответ 4
Я также ищу тот же ответ, я сталкиваюсь со следующим инструментом, возможно, это помогает кому-то http://www.radview.com/Solutions/multimedia-load-testing.aspx
Этот инструмент используется для проверки потоковой передачи видео. Надеюсь, это поможет кому-то. Я обновлю ответ, если получу лучшее.
Спасибо.
Ответ 5
Это программное обеспечение HLS Analyzer может использоваться для стресс-тестирования HTTP Live Streaming сервера и мониторинга производительности загрузки.