← Cloudflare Realtime / realtime / sfu
Realtime против обычных SFU
Cloudflare Realtime в сравнении с традиционными SFU
Cloudflare Realtime меняет сам подход к созданию приложений реального времени, используя распределенную плоскость данных реального времени. Он обеспечивает непрерывную связь в реальном времени, снимая традиционные географические ограничения и проблемы масштабируемости. Realtime рассчитан на разработчиков, которые хотят внедрить возможности WebRTC в клиент-серверной архитектуре, не вникая в сложности регионального масштабирования или управления серверами.
Ограничения централизованных SFU
Selective Forwarding Units (SFU) играют ключевую роль в управлении соединениями WebRTC, избирательно пересылая медиапотоки участникам видеозвонка. Однако их централизованная архитектура создаёт неотъемлемые ограничения:
-
Региональная зависимость: Централизованный SFU требует развёртывания в определённом регионе, из-за чего у пользователей по всему миру возникают задержки, кроме тех, кто находится вблизи выбранного региона.
-
Вопросы масштабируемости: Масштабирование централизованного SFU для удовлетворения глобального спроса может быть сложным и неэффективным и часто требует дополнительной инфраструктуры, усложняя систему.
Чем Cloudflare Realtime отличается?
Cloudflare Realtime устраняет эти ограничения, используя глобальную сетевую инфраструктуру Cloudflare:
-
Глобальное распределение без регионов: В отличие от традиционных SFU, Cloudflare Realtime работает в глобальном масштабе без региональных ограничений. Он использует обширную сеть Cloudflare, включающую более 250 точек присутствия по всему миру, что обеспечивает передачу видео с низкой задержкой и делает сервис быстрым и эффективным для пользователей по всему миру.
-
Децентрализованная архитектура: У Realtime нет выделенных серверов. Каждый сервер в сети Cloudflare участвует в обработке Realtime, что обеспечивает масштабируемость и надёжность. Такой подход отражает распределённую природу других продуктов Cloudflare, таких как DNS-сервис 1.1.1.1 или CDN Cloudflare.
Как работает Cloudflare Realtime
Установка пиринговых соединений
Чтобы инициировать сеанс связи в реальном времени, клиент конечного пользователя устанавливает WebRTC PeerConnection с ближайшим дата-центром Cloudflare. Это соединение использует anycast-маршрутизацию, обеспечивая минимально возможную задержку.
Управление сигнализацией и медиапотоками
-
HTTPS API для сигнализации: Cloudflare Realtime упрощает сигнализацию с помощью простого HTTPS API. Этот API управляет инициацией и координацией медиапотоков, позволяя клиентам передавать новые MediaStreamTracks или запрашивать их с сервера.
-
Эффективная обработка медиаданных: В отличие от традиционных подходов, которые требуют нескольких соединений для разных медиапотоков от разных клиентов, Cloudflare Realtime поддерживает единственный PeerConnection на каждого клиента. Такой упрощённый подход снижает сложность и повышает производительность, обеспечивая приём и передачу медиаданных через одно соединение.
Управление на уровне приложения
Cloudflare Realtime передает ответственность за управление состоянием и отслеживание участников на уровень приложения. Это дает разработчикам возможность самостоятельно реализовывать логику обработки событий, таких как подключение участников или обновление медиапотоков, и создавать индивидуальные сценарии в приложениях.
Начало работы с Cloudflare Realtime
Интеграция Cloudflare Realtime в приложение проходит просто и эффективно: она снимает трудности, связанные с региональным масштабированием и управлением серверами, поэтому вы можете сосредоточиться на создании увлекательного взаимодействия в реальном времени для пользователей по всему миру.