Подтвердить что ты не робот

Как стресс-тест потокового видео сервера?

Кто-нибудь знает какой-нибудь хороший инструмент, который я могу использовать для проведения стресс-тестов на потоковом сервере видео? Мне нужно проверить, насколько хорошо мой сервер обрабатывает 5000+ соединений.

4b9b3361

Ответ 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 коммерческий плагин, который реалистично имитирует поведение игроков без каких-либо скриптов:

Этот плагин также обеспечивает возможность моделирования Адаптивное потоковое битрейт

Отказ от ответственности: мы за развитием этого решения

Ответ 4

Я также ищу тот же ответ, я сталкиваюсь со следующим инструментом, возможно, это помогает кому-то http://www.radview.com/Solutions/multimedia-load-testing.aspx

Этот инструмент используется для проверки потоковой передачи видео. Надеюсь, это поможет кому-то. Я обновлю ответ, если получу лучшее.

Спасибо.