Networking
WebSocket vs SSE vs Long Polling
Každá má své výhody a ideální use case.
WebSocket
Plně duplexní. Klient i server posílají kdykoliv.
const ws = new WebSocket('wss://api.example.com/ws');
ws.onmessage = (e) => console.log(e.data);
ws.send('Hello');
SSE
Jednosměrný stream server → klient přes HTTP. Jednodušší, auto-reconnect.
const es = new EventSource('/events');
es.onmessage = (e) => console.log(e.data);
Long Polling
Request → server drží dokud nemá data → odpověď → nový request.
Kdy co
- WebSocket — chat, hry, collaboration (obousměrné)
- SSE — notifikace, feed, dashboardy (jednosměrné)
- Long Polling — fallback
WebSocket pro duplex, SSE pro stream
Long polling jen jako fallback.