Long Polling

Advanced Ecosystem 🟢 Junior

Definition

Technique où le client envoie une requête HTTP et le serveur la garde ouverte jusqu'à avoir de nouvelles données. Simule du temps réel sans WebSocket.

Analogie

Appeler un restaurant pour demander si une table est libre et rester en ligne jusqu'à ce qu'une se libère.

Exemple de code

async function longPoll() {
  const res = await fetch('/api/updates?timeout=30000');
  const data = await res.json();
  processUpdate(data);
  longPoll(); // Immediately reconnect
}

Cas d'usage

Fallback temps réel quand WebSocket ou SSE ne sont pas disponibles (firewalls, proxies).

Anti-pattern

Faire du polling court (toutes les 100ms) au lieu du long polling, gaspillant bande passante et CPU.

Termes lies

#real-time#networking