Хороший подход к подключению WebRTC для вашего сервера

#mysql #node.js #sockets #socket.io #webrtc

#mysql #node.js #сокеты #socket.io #webrtc

Вопрос:

Итак, у меня есть приложение, которое использует WebRTC для настройки видеочата между 2 браузерами. Я использую node.js для приложения и сокета.ввод-вывод для выполнения рукопожатия. Я провел успешный тест в браузере Chrome при подключении клиентов, поэтому теперь следующий шаг — разрешить использовать это большему количеству людей.

Мне было интересно, как лучше всего подойти к созданию «комнат» на стороне сервера и подключить двух людей, которые хотели бы пообщаться. В тесте я просто помещаю того, кто создал предложение, в объект, и если второй человек соответствует первому (по UUID или ключевому слову), тогда соединение будет установлено, но какой был бы лучший, более безопасный и более подходящий способ сделать это с большим количеством людей?

В настоящее время в моем приложении есть MySQL, поэтому я должен использовать таблицу? Я чувствую, что это отнимет много времени / слишком много вызовов для БД… Должен ли я больше сосредоточиться на Socket.io ? Сокет узла Can.io достаточно хорошо обрабатывает много подключений к серверу?

Если мой вопрос не ясен, пожалуйста, скажите мне.

PS любые ХОРОШИЕ учебные пособия или статьи по настройке WebRTC-соединения в Mozilla были бы великолепны. Я могу добавить соединение, но по какой-то причине добавление потока того, кто «создает предложение», не передается.

Ответ №1:

«Комната» в WebRTC будет использоваться только для сигнализации, способа отправки сообщений до того, как будет инициировано фактическое соединение.

«В моем приложении в настоящее время есть MySQL, так должен ли я использовать таблицу?» — это не совсем лучший подход. Если ваше приложение использует фреймворк / технологию / etc, это не значит, что вы должны использовать его везде. Вы должны использовать технологию, когда она наилучшим образом отвечает вашим потребностям. Если такая комната должна иметь какие-то постоянные атрибуты, то имеет смысл использовать постоянное хранилище, например базу данных.

Комментарии:

1. Я понимаю, что вы имеете в виду, когда говорите «Если ваше приложение использует фреймворк / технологию / etc, это не значит, что вы должны использовать его везде», это очень верно. Мое намерение состояло в том, чтобы вести учет таких сеансов, поэтому я рассмотрел этот вариант. Итак, вы думаете, что это будет что-то вроде сокета. io может справиться? Помогает напрямую подключить двух пользователей, которые находятся на сайте одновременно, несмотря на всех остальных пользователей?

2. Это именно то, для чего нужна сигнализация. И да, что-то вроде сокета. ио может выполнить эту работу. Вам просто нужен способ идентифицировать такой сеанс / комнату, обычно это уникальный код.