Digital Transformation

Server-Sent Events (SSE)

Vito Atmo
Vito Atmo·2 Mei 2026·0 kali dibaca·2 min baca

TL;DR: Server-Sent Events (SSE) memungkinkan server mengirim aliran pesan ke browser lewat HTTP biasa, dengan reconnect otomatis dan tanpa library tambahan. SSE lebih sederhana dari WebSocket dan cocok untuk notifikasi, progress upload, atau dashboard realtime di website bisnis.

Apa itu Server-Sent Events?

Server-Sent Events adalah standar web yang memungkinkan koneksi HTTP tetap terbuka, sehingga server bisa mendorong pesan baru ke browser kapan saja. Browser membaca aliran pesan lewat objek bawaan EventSource yang sudah tersedia di semua browser modern. Lihat juga API yang menjadi pondasi komunikasi server-klien.

Berbeda dari WebSocket yang dua arah, SSE hanya mengalir dari server ke klien. Pertukaran ini membuat protokolnya jauh lebih sederhana, dan reconnect bisa dilakukan otomatis tanpa kode tambahan.

Cara Kerja Singkat

TahapYang Terjadi
Klien membuka EventSourceBrowser kirim request HTTP ke endpoint stream
Server menjawab dengan streamHeader Content-Type: text/event-stream dijaga terbuka
Pesan dikirim format teksSetiap pesan diawali data: dan diakhiri dua newline
Koneksi terputusBrowser otomatis reconnect dan kirim Last-Event-ID

Format ini ringan dan bisa di-cache oleh proxy biasa selama dikonfigurasi tepat. Cocok untuk pasang di belakang CDN atau load balancer dengan pengaturan timeout panjang.

Kenapa Penting?

Untuk website bisnis Indonesia, SSE memberi pengalaman realtime tanpa beban infrastruktur WebSocket. Notifikasi pesanan, status pembayaran, atau progress proses bisa di-push ke pengguna dalam 200 sampai 500 ms tanpa polling yang membebani server. Sejak 2023, SSE banyak dipakai ulang di framework modern seperti Next.js Route Handler dan Vercel Edge Function.

Pertanyaan Umum

Apakah SSE menggantikan WebSocket?

Tidak sepenuhnya. SSE pas untuk push satu arah (notifikasi, feed). WebSocket masih unggul untuk interaksi dua arah seperti chat atau game multiplayer.

Apakah SSE bisa dipakai dengan HTTP/2 dan HTTP/3?

Ya. Bahkan lebih efisien karena multiplexing membuat banyak stream SSE bisa berjalan dalam satu koneksi tanpa limit 6 koneksi per host yang ada di HTTP/1.1.

Bagikan