Как провести стресс-тестирование сервера потокового видео? - PullRequest
20 голосов
/ 30 сентября 2008

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

Ответы [ 5 ]

4 голосов
/ 30 сентября 2008

Один из вариантов - использовать VLC. Вы можете указать URL-адрес в командной строке. (подробности см. здесь ). Затем вы можете написать краткий сценарий оболочки, чтобы открыть все 5000 соединений.

например. следующий скрипт на Perl (очень быстрый взлом - проверка перед запуском, может вызвать взрывы и т. д.)

$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 голосов
/ 30 сентября 2008

начать загрузку 5000+ файлов одного типа с разными подключениями. На самом деле их не нужно воспроизводить, потому что, по сути, клиентская видеоплеер, флэш-память, Windows Media Player и т. Д. Будут просто загружаться. Так что, если ваш сервер может обрабатывать более 5000 загрузок, все будет в порядке. Моя ставка в том, что ваша пропускная способность выдается перед вашим сервером.

1 голос
/ 15 января 2015

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

Чтобы воспроизвести пользовательский опыт и получить ценные метрики о пользовательском опыте, вы можете использовать Apache JMeter + этот коммерческий плагин , который реально имитирует поведение игроков без каких-либо сценариев:

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

Отказ от ответственности: мы поддерживаем разработку этого решения

0 голосов
/ 14 июня 2013

Это HLS Analyzer программное обеспечение может использоваться для стресс-тестирования сервера HTTP Live Streaming и мониторинга производительности загрузки.

0 голосов
/ 30 августа 2012

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

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

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...