𝗦𝗵𝗼𝗿𝘁 𝗣𝗼𝗹𝗹𝗶𝗻𝗴, 𝗟𝗼𝗻𝗴 𝗣𝗼𝗹𝗹𝗶𝗻𝗴 𝗲𝘁 𝗦𝗦𝗘

Vous devez envoyer des données d'un serveur vers un client. Voici trois façons d'y parvenir.

Short Polling

Imaginez un client dans un restaurant. Le client demande au serveur toutes les 5 secondes si son plat est prêt.

Le client répète cette question à intervalles réguliers.

Les problèmes :

  • Trop de requêtes saturent votre serveur.
  • Les mises à jour sont retardées. Si le plat est prêt 1 seconde après une question, le client attend encore 4 secondes avant de demander à nouveau.
  • Cela gaspille les ressources réseau.

Long Polling

Le client demande au serveur : « Dites-moi quand mon plat est prêt. »

Le serveur reste à la table et attend. Si le chef termine le plat, le serveur en informe immédiatement le client. Si le plat prend trop de temps, le serveur dit au client qu'il n'est pas encore prêt.

Les problèmes :

  • Les connexions restent ouvertes pendant longtemps.
  • Vous risquez de rencontrer des délais d'expiration de connexion (timeouts).
  • Il est difficile de gérer de nombreux clients simultanément.

Server Sent Events (SSE)

Pensez aux cours de la bourse en direct. Le client ouvre une connexion une seule fois. Le serveur maintient cette connexion ouverte. Chaque fois qu'un prix change, le serveur envoie la mise à jour au client.

Faits clés :

  • Il s'agit d'une communication unidirectionnelle.
  • Les données circulent uniquement du serveur vers le client.
  • Le client n'envoie pas de messages en retour via cette connexion.

Source : https://dev.to/guruharish_b/short-polling-long-polling-and-sse-20o5