Long Polling
Long polling adalah pendekatan paling sederhana – klien membuat HTTP request, server menahan koneksi hingga ada data baru atau timeout, lalu klien langsung membuat request baru. Kompatibel di mana-mana tapi tidak efisien.
Server-Sent Events (SSE)
SSE menggunakan satu koneksi HTTP persisten dari server ke klien (unidirectional). Ideal untuk feed berita, notifikasi, dan progress updates. Simpler daripada WebSocket untuk use case satu arah.
WebSockets
WebSocket menyediakan full-duplex communication – data bisa mengalir ke dua arah secara simultan. Ideal untuk chat, collaborative editing, dan game real-time.
Perbandingan
- Long Polling: universal, overhead tinggi
- SSE: server-to-client, sederhana, auto-reconnect
- WebSocket: bidirectional, low latency, lebih kompleks
Kesimpulan
Pilih SSE untuk real-time satu arah, WebSocket untuk komunikasi interaktif dua arah, dan Long Polling hanya sebagai fallback compatibility.