𝗦𝗵𝗼𝗿𝘁 𝗣𝗼𝗹𝗹𝗶𝗻𝗴, 𝗟𝗼𝗻𝗴 𝗣𝗼𝗹𝗹𝗶𝗻𝗴, 𝗔𝗻𝗱 𝗦𝗦𝗘
Anda perlu menghantar data daripada pelayan (server) kepada klien (client). Berikut adalah tiga cara untuk melakukannya.
Short Polling
Bayangkan seorang pelanggan di sebuah restoran. Pelanggan tersebut bertanya kepada pelayan setiap 5 saat sama ada makanan sudah siap.
Pelanggan mengulangi soalan ini pada selang masa yang tetap.
Masalahnya:
- Terlalu banyak permintaan (requests) yang masuk ke pelayan anda.
- Kemas kini tertunda. Jika makanan siap 1 saat selepas soalan ditanya, pelanggan perlu menunggu 4 saat lagi sebelum bertanya semula.
- Ia membazirkan sumber rangkaian.
Long Polling
Pelanggan bertanya kepada pelayan: Beritahu saya apabila makanan saya sudah siap.
Pelayan kekal di meja dan menunggu. Jika cef menyiapkan makanan, pelayan akan memberitahu pelanggan dengan segera. Jika makanan mengambil masa terlalu lama, pelayan akan memberitahu pelanggan bahawa ia belum siap.
Masalahnya:
- Sambungan (connections) kekal terbuka untuk tempoh yang lama.
- Anda mungkin menghadapi masalah tamat masa sambungan (connection timeouts).
- Sukar untuk menguruskan ramai pelanggan pada satu-satu masa.
Server Sent Events (SSE)
Bayangkan harga saham secara langsung. Klien membuka satu sambungan. Pelayan mengekalkan sambungan ini agar sentiasa terbuka. Setiap kali harga berubah, pelayan akan menghantar kemas kini kepada klien.
Fakta utama:
- Ini adalah komunikasi satu hala.
- Data hanya mengalir daripada pelayan kepada klien.
- Klien tidak menghantar mesej kembali melalui sambungan ini.
Sumber: https://dev.to/guruharish_b/short-polling-long-polling-and-sse-20o5