Real-time komunikacije u mobilnom razvoju: šta je to, koji protokoli i kako radi

Аутор: IT Sectr Објављено: 2026-06-02 Време читања: 9 мин

Real-time komunikacije su neizostavni deo savremenih mobilnih aplikacija. Prema podacima Grand View Research (2025), tržište real-time tehnologija će porasti na 52 milijarde dolara do 2030. godine. WebRTC, WebSocket i Socket.IO su tri stuba na kojima se grade četovi, pozivi i obaveštenja u realnom vremenu. Real-time razvoj u mobilnim aplikacijama otvara mogućnosti trenutne komunikacije.

Glavne tačke

  • WebSocket — full-duplex protokol za dvosmernu razmenu podataka. Koristi se u četovima, igrama, kolaborativnim editorima.
  • SSE (Server-Sent Events) — jednosmerni tok od servera ka klijentu. Jednostavniji od WebSocket-a, pogodan za novinske feedove i kotacije.
  • WebRTC — tehnologija za peer-to-peer audio/video pozive. Zahteva STUN/TURN i signalni server.
  • Real-time platforme (Socket.IO, Pusher, Ably, PubNub) pojednostavljuju WebSocket integraciju i pružaju gotovu serversku infrastrukturu.
  • STUN određuje eksterni IP uređaja za P2P. TURN prenosi saobraćaj ako P2P nije moguć. TURN je skuplji ali pouzdaniji.

Real-time komunikacije: protokoli WebSocket, SSE i Long Polling

Real-time komunikacije su tehnologije koje omogućavaju razmenu podataka između klijenta i servera sa minimalnim kašnjenjem. Glavni protokoli: WebSocket, SSE (Server-Sent Events), Long Polling i Short Polling. Svaki ima svoju nišu: WebSocket za dvosmernu komunikaciju, SSE za obaveštenja, Long Polling kao fallback za starije pretraživače. Real-time u mobilnom razvoju je posebno važan: korisnici očekuju trenutnu isporuku poruka i obaveštenja. Komunikacije u mobilnom razvoju grade se upravo na ovim protokolima.

WebSocket vs SSE

WebSocket je full-duplex protokol (klijent ↔ server). Nakon rukovanja (HTTP Upgrade) veza ostaje otvorena. Zaglavlja su minimalna (2 bajta naspram HTTP zaglavlja). Koristi se u četovima (WhatsApp, Telegram), igrama, real-time trgovini. SSE je jednosmerni protokol (server → klijent). Klijent se pretplaćuje na događaje i prima ih preko jedne HTTP veze. SSE je jednostavniji, lakše se skalira (običan HTTP), idealan za Twitter feed, kursne liste, push obaveštenja.

Long Polling je tehnika gde klijent šalje HTTP zahtev i drži ga otvorenim dok server ne pošalje podatke ili ne istekne tajm-aut (30–60 sek). Nakon prijema podataka, klijent odmah otvara novi zahtev. Long Polling je fallback za WebSocket. Short Polling — klijent anketira server svakih N sekundi. Najjednostavniji ali neefikasan (većina zahteva vraća prazne odgovore).

Signalni server

Pre uspostavljanja P2P veze, uređajima je potreban Signalni server — posrednički server za razmenu SDP ponuda i ICE kandidata između peer-ova. Signalizacija može biti implementirana putem WebSocket-a, SSE ili bilo kog drugog protokola. Nakon uspostavljanja veze, signalizacija više ne učestvuje u prenosu medijskog saobraćaja.

WebRTC: real-time komunikacije sa audio i video pozivima

WebRTC (Web Real-Time Communication) je otvorena tehnologija za P2P audio/video/podatke. Radi u pretraživačima i nativnim aplikacijama (iOS, Android). WebRTC uključuje: getUserMedia (pristup kameri/mikrofonu), RTCPeerConnection (P2P veza), RTCDataChannel (prenos podataka). WebRTC omogućava real-time u mobilnim aplikacijama — komunikacije u mobilnim aplikacijama rade bez dodatnih dodataka.

WebRTC tok

Peer A kreira RTCPeerConnection i Offer SDP. Korak 2: Offer se šalje putem Signalnog servera peer-u B. Korak 3: Peer B prima Offer, kreira Answer SDP i šalje nazad. Korak 4: Oba peer-a prikupljaju ICE kandidate (adrese za vezu) i razmenjuju ih putem Signalizacije. Korak 5: ICE okvir bira najbolji put (P2P ili putem TURN). Nakon veze — medijski saobraćaj ide direktno.

SDP (Session Description Protocol) je tekstualni protokol koji opisuje parametre veze: kodeke, IP adrese, portove. ICE Candidate je predlog od STUN/TURN: "Možete me naći na ovoj adresi". Što više kandidata, veća šansa za P2P.

Parametar Socket.IO Pusher Ably PubNub
TipBiblioteka (sa serverom)SaaSSaaSSaaS
ProtokolWebSocket + HTTP fallbackWebSocketWebSocket + SSEWebSocket
Besplatni limitNeograničeno (vaš server)200k poruka/dan50k poruka/mesec100 poruka/sek
Globalna replikacijaNe (vaš server)DaDa (7 regiona)Da
Garantije isporukeACK + tajm-autiWebSocket (best effort)Exactly-onceAt-least-once
PopularnostVeoma visokaVisokaRastućaVisoka

Socket.IO je lider za startape: kontrolišete server, nema ograničenja. Pusher i Ably su za proizvode gde ne želite da upravljate infrastrukturom. PubNub je za IoT i globalnu publiku. IT Sectr preporučuje Socket.IO za projekte sa sopstvenim backend-om, Pusher za brze prototipove, Ably za preduzeća sa zahtevima za pouzdanošću.

Platforme: Socket.IO, Pusher, Ably, PubNub

Real-time platforme pružaju gotovu serversku infrastrukturu za WebSocket i SSE. One eliminišu potrebu za pisanjem sopstvenog real-time servera, balansiranjem WebSocket veza i njihovim skaliranjem. Izbor platforme zavisi od budžeta, zahteva za pouzdanošću i spremnosti da upravljate serverom. Za real-time u mobilnom razvoju, platforme nude gotove klijentske SDK-ove i infrastrukturu.

Socket.IO

Socket.IO je biblioteka za Node.js i klijente (iOS, Android, web). Zasnovana na WebSocket-u, ali koristi HTTP polling kao fallback. Podržava sobe, imenske prostore, ACK potvrde. Za razvoj — socket.io-client-java (Android) i socket.io-client-swift (iOS). Komunikacije u mobilnim aplikacijama na Socket.IO se pouzdano obrađuju zahvaljujući automatskom ponovnom povezivanju.

Pusher i Ably

Pusher je real-time SaaS platforma. Jednostavna integracija: napravite kanal i pretplatite se na događaje. Pusher Channels za obaveštenja, Pusher Beams za push obaveštenja. Ably je enterprise nivo sa globalnom replikacijom u 7 data centara. Garantuje exactly-once isporuku. Podržava SSE, WebSocket, MQTT za IoT. Obe platforme rešavaju zadatke komunikacije u mobilnom razvoju bez pisanja serverskog koda.

Real-time infrastruktura: STUN, TURN, Signaling u WebRTC

STUN (Session Traversal Utilities for NAT) je server koji pomaže uređaju da otkrije svoj eksterni IP i port iza NAT-a. Uređaj šalje STUN zahtev, server odgovara: "Vidljivi ste kao 203.0.113.5:45678". STUN se koristi besplatno (Google STUN: stun.l.google.com:19302). U kontekstu real-time infrastrukture, STUN je prvi korak ka uspostavljanju P2P kanala.

STUN vs TURN

TURN (Traversal Using Relays around NAT) je relejni server koji prenosi medijski saobraćaj ako P2P veza nije moguća (npr. oba uređaja iza simetričnog NAT-a). TURN troši propusni opseg servera, pa je skup. U WebRTC, ICE okvir prvo proba P2P, zatim TURN kao poslednje sredstvo. Real-time u razvoju zahteva TURN za komunikacije u mobilnim aplikacijama pri povezivanju preko korporativnih mreža.

ICE (Interactive Connectivity Establishment) je okvir koji prikuplja sve moguće puteve veze (lokalni IP, eksterni IP putem STUN, TURN releje) i bira najbolji. ICE Candidate je svaki mogući put. Što više kandidata, veća verovatnoća uspešnog P2P.

Peer-to-Peer

P2P je direktna veza između dva uređaja bez posredničkog servera za medijski saobraćaj. P2P smanjuje kašnjenje (< 100 ms) i serverske troškove. Nedostaci: slaba zaštita od NAT-a, potreba za STUN/TURN. WebRTC podrazumevano koristi P2P.

P2P i ICE

Peer-to-Peer (P2P) je arhitektura gde se podaci prenose direktno između uređaja. U kontekstu real-time komunikacija, P2P se koristi u WebRTC za minimiziranje kašnjenja. ICE (Interactive Connectivity Establishment) je mehanizam koji pronalazi najbolji put za P2P vezu. Za razvoj, P2P je optimalan način organizacije komunikacija u mobilnim aplikacijama u realnom vremenu.

Kako ICE radi

ICE prikuplja ICE Candidate tri tipa: 1) host (lokalni IP), 2) srflx (putem STUN), 3) relay (putem TURN). Svi kandidati se sortiraju i ICE pokušava da se poveže sa svakim po prioritetu. Prva uspešna veza se koristi. Ako P2P nije moguć, koristi se TURN (ali je skup).

Često postavljana pitanja

Kada koristiti WebSocket, a kada SSE?

WebSocket za dvosmerne komunikacije u mobilnim aplikacijama (čet, igre, zajedničko uređivanje). SSE za jednosmerna obaveštenja od servera ka klijentu (novinski feed, kotacije). WebSocket je složeniji, SSE je jednostavniji i lakše se skalira.

Šta su STUN i TURN serveri u WebRTC?

STUN je server koji pomaže u uspostavljanju direktne P2P veze određivanjem eksternog IP i porta uređaja. TURN je relejni server koji prenosi saobraćaj ako P2P nije moguć (iza simetričnog NAT). TURN je skuplji jer troši propusni opseg servera.

Koju real-time platformu izabrati za startap?

Socket.IO za jednostavne četove i obaveštenja ako imate svoj server. Pusher za brzi početak bez serverske infrastrukture. Ably za enterprise zahteve sa globalnom replikacijom. IT Sectr preporučuje Socket.IO kao najfleksibilniju i besplatnu opciju za komunikacije u mobilnom razvoju.

Šta je Signalni server u WebRTC?

Signalni server je posrednički server kroz koji dva uređaja razmenjuju SDP ponude i ICE kandidate za uspostavljanje WebRTC veze. Nakon razmene, medijski saobraćaj ide direktno P2P, zaobilazeći signalizaciju.

Koja je razlika između Short Polling i Long Polling?

Short Polling — klijent konstantno anketira server u fiksnim intervalima (čak i ako nema podataka). Long Polling — klijent šalje zahtev i čeka da server pošalje podatke ili istekne tajm-aut. Long Polling je efikasniji ali i dalje lošiji od WebSocket-a.

Sumiranje

  • WebSocket je glavni protokol za real-time komunikacije u mobilnim aplikacijama. SSE za jednosmerna obaveštenja od servera.
  • WebRTC je tehnologija za P2P audio/video pozive. Zahteva Signalni server, STUN i opciono TURN.
  • Socket.IO je izbor za startape sa sopstvenim serverom. Pusher i Ably su SaaS rešenja bez serverske infrastrukture.
  • STUN je besplatan server za određivanje eksternog IP. TURN je plaćeni relej za slučajeve kada P2P nije moguć.
  • ICE okvir prikuplja sve kandidate za vezu i bira najbolji put (P2P > TURN).
  • Long Polling i Short Polling su zastarele tehnologije za komunikacije u mobilnom razvoju. Koristite ih samo kao fallback.
  • Signalni server je neophodan za razmenu SDP i ICE kandidata pre uspostavljanja P2P veze.

Развићемо мобилну апликацију под кључ

IT Sectr креира iOS и Android апликације за стартапе и предузећа од 2017. године. Саветоваћемо вас и предложити најбоље решење.

Разговарајте о пројекту