Бюджет: 1909 USD Срок: 21 день
Для разработки on-premise системы «ViM» на 100 подключений (10 комнат по 10 человек) критически важно заложить правильную SFU-архитектуру с прицелом на рост. Оптимально использовать mediasoup в Docker с host-сетью, что исключит проблемы с NAT и позволит эффективно утилизировать ядра процессора.
Мой подход основан на разделении сигнального слоя (Node.js/Socket.io + Redis для комнат) и медиасерверов. При росте нагрузки до 1000 пользователей мы масштабируем платформу горизонтально, добавляя SFU-ноды и связывая их через PipeTransports. Чтобы дать представление, инициализация воркера mediasoup выглядит примерно так:
const worker = await mediasoup.createWorker({ rtcMinPort: 10000, rtcMaxPort: 20000 });
const router = await worker.createRouter({ mediaCodecs });
const transport = await router.createPipeTransport({ listenIp: '0.0.0.0' });
Готов развернуть базовый SFU-прототип в Docker на вашем тестовом сервере за 3 дня после получения доступов.