← Cloudflare Realtime / realtime / sfu
Relace a stopy
Cloudflare Realtime nabízí jednoduchý, ale výkonný rámec pro vytváření zážitků v reálném čase. Jádrem tohoto systému jsou tři klíčové koncepty: Aplikace, Relace a Tracky. Seznámení s těmito koncepty je pro používání Realtime klíčové.
Aplikace
Realtime Application je prostředí, v němž mohou vzájemně interagovat různé Sessions a tracky. Příkladem může být produkční, staging nebo jiná prostředí, kde chcete oddělit Sessions a tracky od sebe. Využití Cloudflare Realtime lze zjišťovat na úrovni Application, Session nebo track.
Relace
A Relace ve službě Cloudflare Realtime přímo odpovídá WebRTC PeerConnection. Představuje navázání komunikačního kanálu mezi klientem a nejbližším datovým centrem Cloudflare, které se určuje pomocí anycast směrování Cloudflare. Klient obvykle udržuje jedinou Session, která zahrnuje veškerou komunikaci mezi klientem a Cloudflare.
- Mapování jedna k jedné s PeerConnection: Každá Session přímo reprezentuje WebRTC PeerConnection a slouží k přenosu mediálních dat v reálném čase.
- Anycast směrování: Klient se připojuje k nejbližšímu datacentru Cloudflare, čímž optimalizuje latenci a výkon.
- Jednotný komunikační kanál: Jedna Session dokáže obsloužit všechny typy komunikace mezi klientem a Cloudflare, což zajišťuje plynulý tok dat.
Tracky
V rámci Session může existovat jeden nebo více Tracky.
- Tracky odpovídají objektu MediaStreamTrack: Tracky vycházejí z konceptu MediaStreamTrack a slouží k přenosu audia, videa nebo dat.
- Globálně jedinečná ID: Když do Cloudflare odešlete track, přiřadí se mu jedinečné ID, které pak lze použít k načtení tracku do jiné relace jinde.
- Dostupné globálně: Schopnost odesílat a stahovat stopy je klíčová pro to, co dělá z Realtime univerzální nástroj pro aplikace v reálném čase. Každá stopa je globálně dostupná k načtení z libovolné relace v rámci aplikace.
Realtime jako programovatelná „ústředna“
Pro pochopení Realtime se hodí přirovnání k telefonní ústředně. Kdysi obsluha ústředny propojovala hovory ručním zapojováním konektorů. Realtime obdobně umožňuje dynamické směrování mediálních proudů a funguje jako programovatelná ústředna pro moderní komunikaci v reálném čase.
Nad rámec „Rooms“, „Users“ a „Participants“
Mnoho SFU používá pro správu mediálních streamů mezi uživateli koncept „místností“, tento přístup má ale omezení, pokud jde o škálovatelnost a flexibilitu. Cloudflare Realtime proto volí granulárnější a flexibilnější model se Sessions a Tracky, který umožňuje širokou škálu případů použití:
- Rozsáhlé vzdálené akce, jako jsou neformální diskuse „fireside chats“ s tisíci účastníků.
- Interaktivní konverzace s možností přizvat členy publika „na pódium“.
- Vzdělávací aplikace, ve kterých může lektor prezentovat současně ve více virtuálních učebnách.
Presence Protocol vs. Media Flow
Realtime odlišuje protokol přítomnosti od toku médií, což aplikacím v reálném čase přináší škálovatelnost a flexibilitu. Toto oddělení umožňuje vývojářům vytvářet zážitky na míru, od komorních hovorů až po masivní vysílání s nízkou latencí.