Perbedaan SSE dan WebSockets

SSE dan WebSockets termasuk ke dalam teknologi data push. Lantas, apa yang membedakan keduanya? dan teknologi mana yang lebih baik untuk digunakan?

Perbedaan SSE dan WebSockets

Server-Sent Events (SSE) adalah teknologi HTML5 yang akan memb…


This content originally appeared on DEV Community and was authored by Benita Clarissa

SSE dan WebSockets termasuk ke dalam teknologi data push. Lantas, apa yang membedakan keduanya? dan teknologi mana yang lebih baik untuk digunakan?

Perbedaan SSE dan WebSockets

  • Server-Sent Events (SSE) adalah teknologi HTML5 yang akan membuat server melakukan push data ke client secara satu arah (one-way messaging).

  • WebSockets adalah teknologi HTML5 yang akan membuat server melakukan push data dua arah antara client dan server (two-way communication).

Kapan perlu menggunakan data push? WebSockets atau SSE?

Berikut pertimbangan saat memilih teknologi data push yang akan diimplementasikan dalam aplikasi.

  • Seberapa sering server mengirimkan event (data) ke client?

    • Jika server sering mengirimkan data ke client, aplikasi tersebut cocok menggunakan teknologi data push dibandingkan data pull.
  • Apakah latency dan baterai menjadi pertimbangan utama bagi user?

    • Latency dan baterai dapat menjadi pertimbangan utama bagi mobile user. Konektivitas jaringan sangat penting bagi tipe user ini. Oleh karena itu, data push lebih baik dibandingkan data pull.
  • Seberapa sering client mengiriman event (data) ke server?

    • Jika event terjadi dalam frekuensi rapat (di bawah 5 detik, atau bahkan 1 detik sekali), aplikasi tersebut lebih baik menggunakan WebSockets dibandingkan SSE.
    • Jika event terjadi dalam frekuensi lebih jarang (5-10 detik sekali), Anda dapat menggunakan SSE dan bahkan data push technology tidak perlu terlalu diprioritaskan.
  • Apakah waktu pengiriman event dari server bisa diprediksi?

    • Ketika event dikirim lebih dari 1 menit sekali, data pull lebih baik karena tidak perlu membuka socket untuk SSE/WebSockets.
  • Apakah server mengirimkan (push) binary data ke client?

    • Jika ada banyak binary data yang dikirimkan server, sebaiknya menggunakan WebSockets dibandingkan SSE (bahkan lebih baik menggunakan XHR polling dibandingkan SSE).
    • Jika data binary hanya sedikit, lakukan encoding pada SSE untuk mengurangi jumlah byte yang dikirimkan
  • Apakah client mengirimkan (push) binary data ke server?

    • XMLHttpRequest (seperti: Ajax dan SSE) dan WebSockets bisa digunakan untuk mengirimkan binary data.

Jadi, teknologi mana yang lebih baik?

Masing-masing teknologi memiliki keunggulan yang berbeda, tergantung dari kebutuhan aplikasi yang dikembangkan.

  • Aplikasi yang membutuhkan komunikasi 2 arah antara client dan server

    • harus menggunakan WebSockets
    • tidak cocok menggunaakn SSE
    • Contoh: chat platform
  • Aplikasi yang hanya mengirimkan data 1 arah ke client

    • sangat cocok menggunakan SSE
    • tidak cocok menggunakan WebSockets
    • Contoh: FX trading

Selanjutnya

Post selanjutnya akan membahas cara implementasi SSE. Implementasi backend akan menggunakan bahasa pemrograman Golang. Implementasi dari sisi frontend akan menggunakan teknologi ReactJS.

Referensi

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


This content originally appeared on DEV Community and was authored by Benita Clarissa


Print Share Comment Cite Upload Translate Updates
APA

Benita Clarissa | Sciencx (2021-11-04T04:50:06+00:00) Perbedaan SSE dan WebSockets. Retrieved from https://www.scien.cx/2021/11/04/perbedaan-sse-dan-websockets/

MLA
" » Perbedaan SSE dan WebSockets." Benita Clarissa | Sciencx - Thursday November 4, 2021, https://www.scien.cx/2021/11/04/perbedaan-sse-dan-websockets/
HARVARD
Benita Clarissa | Sciencx Thursday November 4, 2021 » Perbedaan SSE dan WebSockets., viewed ,<https://www.scien.cx/2021/11/04/perbedaan-sse-dan-websockets/>
VANCOUVER
Benita Clarissa | Sciencx - » Perbedaan SSE dan WebSockets. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2021/11/04/perbedaan-sse-dan-websockets/
CHICAGO
" » Perbedaan SSE dan WebSockets." Benita Clarissa | Sciencx - Accessed . https://www.scien.cx/2021/11/04/perbedaan-sse-dan-websockets/
IEEE
" » Perbedaan SSE dan WebSockets." Benita Clarissa | Sciencx [Online]. Available: https://www.scien.cx/2021/11/04/perbedaan-sse-dan-websockets/. [Accessed: ]
rf:citation
» Perbedaan SSE dan WebSockets | Benita Clarissa | Sciencx | https://www.scien.cx/2021/11/04/perbedaan-sse-dan-websockets/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.