Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

Realtime と通常の SFU の比較

最終更新 Markdown で表示Agent セットアップ

Cloudflare Realtime と従来型 SFU

Cloudflare Realtime は、分散型のリアルタイムデータプレーンを使い、リアルタイムアプリケーションの作り方を変えます。地理的な制約やスケーラビリティの心配を減らし、リアルタイム通信をスムーズにします。Realtime は、リージョン単位のスケールやサーバー管理の複雑さに深入りせず、サーバー/クライアント構成で WebRTC 機能を組み込みたい開発者向けです。

集中型 SFU の制約

選択的転送ユニット(Selective Forwarding Units、SFU)は、ビデオ通話の参加者へメディアストリームを選択的に転送し、WebRTC 接続を管理するうえで重要な役割を果たします。ただし、集中型であるため、次の制約があります。

  • リージョン依存: 集中型 SFU は特定のリージョンにデプロイする必要があります。そのリージョンの近くにいるユーザー以外は、グローバル利用でレイテンシの問題が出ます。

  • スケーラビリティの課題: 世界規模の需要に合わせて集中型 SFU をスケールするのは難しく、非効率です。追加インフラと複雑さが増えることがよくあります。

Cloudflare Realtime はどう違うか

Cloudflare Realtime は、Cloudflare のグローバルネットワーク基盤でこれらの制約に対応します。

  • リージョンに縛られないグローバル分散: 従来の SFU と異なり、Cloudflare Realtime はリージョン制約なしでグローバルに動作します。世界 250 以上の拠点を使い、低レイテンシで動画を転送します。世界中のユーザーに対して高速で効率的です。

  • 分散アーキテクチャ: Realtime 専用サーバーはありません。Cloudflare ネットワーク内のすべてのサーバーが Realtime の処理に加わり、スケーラビリティと信頼性を確保します。この考え方は、1.1.1.1 DNS や Cloudflare の CDN など、ほかの Cloudflare 製品の分散性と似ています。

Cloudflare Realtime の仕組み

Peer Connection の確立

リアルタイム通信セッションを始めるとき、エンドユーザーのクライアントは最寄りの Cloudflare 拠点へ WebRTC PeerConnection を確立します。この接続は anycast ルーティングの恩恵を受け、可能な限り低いレイテンシに最適化されます。

シグナリングとメディアストリーム管理

  • シグナリング用 HTTPS API: Cloudflare Realtime は、わかりやすい HTTPS API でシグナリングを簡素化します。この API はメディアストリームの開始と調整を管理し、クライアントが新しい MediaStreamTracks をプッシュしたり、サーバーからこれらのトラックをリクエストしたりできます。

  • 効率的なメディア処理: 異なるクライアントからの異なるメディアストリームに複数の接続が必要な従来の方式と異なり、Cloudflare Realtime はクライアントあたり 1 つの PeerConnection を維持します。この流れにより複雑さが減り、1 つの接続でメディアのプッシュとプルの両方を扱うことで性能が向上します。

アプリケーション層での管理

Cloudflare Realtime は、状態管理と参加者の追跡をアプリケーション層に委ねます。開発者は、参加者の参加やメディアストリームの更新といったイベントの扱いを自前のロジックで設計できます。アプリケーションごとに合わせた体験を作れます。

Cloudflare Realtime を始める

Cloudflare Realtime の統合は、手順がわかりやすく効率的です。リージョン単位のスケールやサーバー管理の負担を減らし、世界中のユーザー向けのリアルタイム体験づくりに集中できます。

役に立ちましたか?