DEV Community

Benita Clarissa
Benita Clarissa

Posted on

Mengenal Server-Sent Events (SSE)

Apa itu SSE?

Server-Sent Events (SSE) adalah teknologi HTML5 yang akan membuat server melakukan push data ke client secara satu arah (one-way messaging). Hal ini akan menjadikan aplikasi akan selalu mendapatkan update terbaru secara otomatis. User tidak perlu melakukan interaksi apa pun seperti refresh page, click button, atau sejenisnya.

Data Push vs Data Pull

Secara garis besar, komunikasi data antara server dan client dapat terbagi 3 macam, yaitu: no-updates, data pull, dan data push.

  • No updates

Ini adalah komunikasi data paling sederhana antara client dan server. Tidak ada update data secara otomatis dari server. User harus refresh / reload page untuk mendapatkan data terbaru.
No updates

  • Data Pull

Data pull menggunakan teknik ajax untuk mendapatkan data terbaru dalam periode tertentu (contoh: 5 menit sekali). Client (browser) tetap harus melakukan request ke server secara otomatis untuk mendapatkan data terbaru. User tidak perlu refresh / reload halaman untuk mendapatkan data terbaru.
Data Pull

  • Data Push

Pada data push, server yang akan mengirimkan data terbaru ke client. Hal ini membuat client (browser) tidak perlu melakukan request ke server. User juga tidak perlu melakukan refresh / reload halaman untuk mendapatkan data terbaru. SSE termasuk ke dalam kategori data push.
Data Push

Data push memiliki beberapa keunggulan dibandingkan data pull:

  • Latency yang lebih rendah
  • Saat tidak ada update, client tidak perlu melakukan request ke server secara otomatis sehingga meminimalkan resource/request yang terbuang.
  • Lebih hemat bandwidth dan connection

Aplikasi yang menggunakan SSE

SSE sangat berguna untuk aplikasi web yang membutuhkan fresh data dalam kurun waktu singkat. Contohnya: kurs valuta asing, pergerakan harga saham, dan aplikasi lainnya yang membutuhkan realtime data updates.

Selanjutnya

Teknologi yang termasuk ke dalam data push adalah SSE dan WebSocket. Pada post selanjutnya, kita akan membahas mengenai perbedaan SSE dan WebSocket.

Referensi

Cook, D. (2014). Data Push Apps with HTML5 SSE: Pragmatic Solutions for Real-World Clients (1st ed.) [E-book]. O’Reilly Media.

Top comments (0)