Retour aux questions fréquentes

Polling vs streaming des données blockchain — lequel choisir ?

Mis à jour en août 2026

Le polling consiste à demander de façon répétée à un nœud si quelque chose de nouveau s'est produit. Le streaming consiste à maintenir une connexion ouverte et à recevoir les données au fur et à mesure qu'elles sont produites. Le streaming offre une latence plus faible, un coût moindre à l'échelle, et — surtout — peut vous dire exactement ce que vous avez manqué quand la connexion se coupe.

Pour tout ce qui dépasse le script ou le prototype, le streaming est le meilleur choix par défaut.

Comment se comparent-ils ?

PollingStreaming
LatenceLimitée par l'intervalle d'interrogationAu fur et à mesure de la production des données
Volume de requêtesConstant, réponses majoritairement videsUne seule connexion
Coût à l'échelleCroît avec la fréquenceGlobalement plat
Données manquées à la déconnexionDétecter et requêter à nouveau par plage de blocsReprendre depuis un curseur
Visibilité des réorganisationsÀ détecter soi-mêmeSignalée dans le flux
Mise en œuvreTrivialeNécessite une gestion de connexion

Pourquoi le polling est-il coûteux ?

Parce que la plupart des interrogations ne renvoient rien. Interrogez toutes les secondes une chaîne qui produit un bloc toutes les douze secondes, et environ onze requêtes sur douze sont gaspillées — mais vous les payez quand même, et le nœud continue de les servir.

Resserrer l'intervalle pour réduire la latence aggrave les choses, ne les améliore pas. Vous finissez par payer davantage pour attendre moins, et le ratio ne s'améliore jamais.

Qu'est-ce qui pose vraiment problème avec le polling ?

Pas la latence. Les trous.

Votre processus redémarre, ou le réseau tombe, ou un déploiement prend trente secondes. Quand le polling reprend, vous devez déterminer ce qui s'est passé pendant votre absence — ce qui implique de suivre le dernier bloc traité, d'interroger la plage manquée, et de gérer la possibilité qu'une partie ait été réorganisée pendant votre déconnexion.

La plupart des équipes écrivent cette logique elles-mêmes. Beaucoup l'écrivent légèrement de travers, et l'échec est silencieux : une poignée d'enregistrements manquants que personne ne remarque jusqu'à ce qu'un total ne concorde plus, des mois plus tard.

Comment le streaming résout-il ce problème ?

Avec un curseur — un jeton identifiant précisément où vous en êtes dans le flux, y compris le contexte de fork. Reconnectez-vous avec votre dernier curseur et le flux reprend exactement à cet endroit. Rien n'est manqué, rien n'est dupliqué, et si la chaîne s'est réorganisée pendant votre absence, le flux vous indique ce qui a été annulé plutôt que de le passer sous silence.

C'est ainsi que fonctionne Firehose, et c'est pour cela que les consommateurs en streaming peuvent offrir des garanties de correction que les boucles de polling ne peuvent pas offrir. La différence de fiabilité est plus grande que la différence de latence, et c'est celle qui compte en production.

Quand le polling suffit-il ?

Quand vous prototypez, quand vous n'avez réellement besoin que d'un instantané périodique, ou quand vous vérifiez un petit nombre de valeurs spécifiques à une cadence lente. Si une mise à jour manquée est récupérable et que la latence importe peu, la simplicité du polling est un véritable avantage.


Questions fréquentes

Les webhooks sont-ils du streaming ? Plus proches du streaming que du polling, mais la livraison est au mieux « une fois » à moins que le fournisseur n'implémente des mécanismes de nouvelle tentative et de rejeu. Vérifiez ce qui se passe quand votre point de terminaison est indisponible.

Puis-je aussi diffuser des données historiques ? Oui. Substreams traite l'historique en parallèle et poursuit en diffusion en direct avec le même code.

Que se passe-t-il si mon consommateur est plus lent que la chaîne ? Un flux basé sur un curseur vous permet de prendre du retard et de le rattraper sans perdre votre position.


Diffusez plutôt que d'interroger — obtenez une clé API sur thegraph.market, aucune information personnelle requise.

Voir aussi : RPC vs indexation · Puis-je obtenir l'historique complet et les données en temps réel d'une seule source ? · Qu'est-ce qu'une réorganisation de chaîne blockchain ?