Нагрузка при функции SFU с поддержкой Simulcast или MCU

Alesia Bondar

New Member
Добрый вечер, подскажите, пожалуйста что предпочтительнее использовать sfu или mcu в случае:

1. Митинга (юзеры публикуют свой поток, прослушивают другие)

2. Вебинара (спикеры публикуют поток и прослушивают другие (до 15 спикеров), остальные участники вебинара только прослушивают). У нас могут быть вебинары на 1000 и до 10к человек.

И какое ограничение по юзерам будет в двух случаях допустим при инстансе флешфонера m5.24 и m6i.32xlarge?
 

Max

Administrator
Staff member
Добрый день.
В случае митинга можно использовать как MCU, так и SFU. Однако при использовании SFU для митинга, чем больше количество участников, тем больше нагрузка на канал участника, т.к. каждый получает потоки от каждого участника.
В случае вебинара MCU микшер выглядит предпочтительнее: потоки от участников заходят в микшер, и выходной поток микшера (со всеми видео и звуковыми дорожками) транслируется зрителям.
Общая рекомендация по выбору сервера: минимум два ядра CPU на один микшер, плюс 10% запаса по ядрам для остальных задач, включая систему.
Для того, чтобы определить, подойдет ли определенная конфигурация для микширования, необходимы тесты, описанные в статье: Сколько микшеров может быть на сервере? Так, на выделенном физическом сервере с 24 ядрами CPU (48 CPU с учетом гипертрединга, 128 Гб ОЗУ можно одновременно запустить 4 микшера 720p по 15 входящих потоков 720p в каждом.
Кроме того, если требуется большое числор зрителей, сказывается ресурсоемкость WebRTC как такового. Поэтому потребуются определенные настройки сервера, описанные в статье Какой нужен сервер для 1000 WebRTC стримов? С учетом настроек, сервер, аналогичный вышеупомянутому, может обслужить 1000 зрителей без микширования.
Таким образом, для вебинара до 15 участников на 1000 зрителей минимальная конфигурация выглядит как 96 CPU, 256 Гб ОЗУ. Теоретически, упомянутые инстансы подходят, однако, поскольку используются виртуальные ядра CPU, производительность может быть хуже по сравнению с физическими ядрами.
Если требуется большее число подписчиков, придется развернуть CDN для раздачи подписчикам: один Edge сервер на 2000 подписчиков, т.е. до 5 Edge серверов, если подписчиков планируется до 10000.
 
Top