25 points par xguru 2025-12-24 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • Protocole de streaming durable basé sur HTTP permettant de transmettre les données de façon fiable aux navigateurs web, aux clients mobiles et natifs
  • Prend en charge une méthode simple et éprouvée pour créer et consommer des flux rejouables avec garantie d’ordre
  • La reprise basée sur les offsets permet de reprendre à partir du point d’interruption même après une coupure de connexion
  • Utilisable dans divers scénarios temps réel comme le streaming de conversations IA, la synchronisation de bases de données, l’édition collaborative, l’event sourcing et l’exécution de workflows
  • Résout les problèmes d’instabilité de connexion des WebSocket et de SSE
  • Conception refresh-safe permettant de reprendre au même endroit après un changement d’onglet ou le passage de l’application en arrière-plan
  • Le partage de flux basé sur URL permet à plusieurs utilisateurs de consulter simultanément le même flux
  • Une architecture compatible CDN et pensée pour réduire les coûts permet de gérer des millions de connexions simultanées depuis une seule origine
  • Prend en charge la synchronisation multi-appareils et multi-onglets
  • Caractéristiques du protocole
    • Universal : utilisable dans tout environnement où HTTP fonctionne
    • Simple : basé sur HTTP standard, sans protocole personnalisé supplémentaire
    • Resumable : prise en charge de la lecture et de la reprise basées sur les offsets
    • Real-time : tailing en temps réel via les modes long-poll et SSE
    • Economical : montée en charge efficace grâce au cache CDN
    • Composable : permet de construire des couches d’abstraction supérieures (par ex. le moteur de synchronisation Postgres en temps réel d’Electric)
  • Caractéristiques de performance
    • Latence inférieure à 15 ms, gestion de millions d’abonnés simultanés, scalabilité horizontale
    • Une structure d’URL basée sur les offsets maximise l’utilisation du cache CDN
  • Relation avec les systèmes de streaming backend
    • Complète les systèmes de messagerie inter-serveurs comme Kafka, RabbitMQ et Kinesis
    • Durable Streams prend en charge la couche de transport vers le client
    • Le serveur effectue l’authentification et la transformation des données, puis Durable Streams les diffuse en fan-out sur HTTP
  • Différences avec SSE et WebSocket
    • SSE/WebSocket fournissent une simple connexion, tandis que Durable Streams apporte une structure fondée sur un journal durable
    • Combine les avantages d’un journal standardisé, comme la reprise par offset, la relecture de l’historique et la prise en charge de plusieurs lecteurs
  • Souplesse d’implémentation
    • Il suffit d’implémenter une API HTTP, un stockage durable et la gestion des offsets pour créer un serveur dans n’importe quel langage
    • Fournit un serveur de référence Node.js ainsi que des tests de conformité et des outils de benchmark
  • Principaux cas d’usage
    • Synchronisation de base de données en temps réel : diffusion des changements Postgres vers le web et le mobile
    • Systèmes d’event sourcing : restauration d’état fondée sur un journal d’événements durable
    • Streaming de conversations IA : reprise sans interruption des flux de tokens LLM
  • Protocole sous licence Apache 2.0, validé en production pendant 1,5 an par l’équipe Electric SQL

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.