Polling dalam Desain Sistem

Polling memungkinkan klien untuk mendapatkan pembaruan dari server. Anda dapat membandingkannya dengan seorang pelayan yang memeriksa pesanan makanan Anda.

Ada tiga metode utama.

Short Polling

Klien meminta pembaruan pada interval waktu yang tetap. Jika data belum siap, server akan mengirimkan respons kosong. Klien mengulangi siklus ini hingga data tiba. Metode ini menghasilkan banyak permintaan yang tidak perlu.

Long Polling

Klien mengirimkan permintaan dan server menahannya tetap terbuka. Server hanya akan merespons ketika data sudah siap. Setelah klien menerima respons, ia segera mengirimkan permintaan baru. Hal ini menciptakan sensasi yang mendekati real-time. Metode ini mengurangi respons kosong dibandingkan dengan short polling.

Event Stream

Klien dan server membuka satu koneksi tunggal. Koneksi ini tetap terbuka hingga salah satu pihak menutupnya. Server mendorong data ke klien setiap kali sebuah event terjadi. Ini adalah komunikasi real-time yang sesungguhnya.

Kekurangannya adalah penggunaan sumber daya. Koneksi tersebut menempati port tertentu. Port tersebut tetap tidak tersedia untuk tugas lain hingga koneksi berakhir.

Pilihan Anda bergantung pada kebutuhan sistem dan trade-off yang Anda terima.

Sumber: https://dev.to/cibani_joe/polling-in-system-design-ph6