Qu'est-ce que Pub/Sub ?

Pub/Sub est un service de messagerie asynchrone et évolutif qui dissocie les services de production de messages des services qui traitent ces messages.

Pub/Sub permet aux services de communiquer de manière asynchrone, avec des latences généralement de l'ordre de 100 millisecondes.

Pub/Sub est utilisé pour les pipelines d'analyse de flux et d'intégration de données afin de charger et de distribuer des données. Il est également efficace en tant que middleware de messagerie pour l'intégration des services ou comme file d'attente pour charger en parallèle des tâches.

Pub/Sub vous permet de créer des systèmes de producteurs et de consommateurs d'événements, appelés éditeurs et abonnés. Les éditeurs communiquent de manière asynchrone avec les abonnés en diffusant des événements plutôt que par des appels de procédure à distance (RPC) synchrones.

Les éditeurs envoient des événements au service Pub/Sub, sans savoir comment ni quand ces événements seront traités. Pub/Sub fournit ensuite des événements à tous les services qui y réagissent. Dans les systèmes qui communiquent via des RPC, les éditeurs doivent attendre que les abonnés reçoivent les données. L'intégration asynchrone dans Pub/Sub augmente toutefois la flexibilité et la robustesse du système dans son ensemble.

Pour commencer à utiliser Pub/Sub, consultez le guide de démarrage rapide sur l'utilisation de la console Trusted Cloud . Pour une introduction plus complète, consultez la section Créer un système de messagerie Pub/Sub.

Cas d'utilisation courants

  • Ingestion d'événements d'interaction utilisateur et d'événements de serveur. Pour utiliser des événements d'interaction utilisateur en provenance d'applications pour utilisateurs finaux, ou bien des événements de serveur provenant de votre système, vous pouvez les transférer vers Pub/Sub. Vous pouvez ensuite utiliser un outil de traitement de flux pour transmettre les événements aux bases de données. Pub/Sub vous permet de regrouper des événements de nombreux clients simultanément.
  • Distribution d'événements en temps réel. Les événements, bruts ou traités, peuvent être mis à la disposition de plusieurs applications au sein de votre équipe et de votre organisation pour un traitement en temps réel. Pub/Sub est compatible avec un "bus d'événements d'entreprise" et les modèles de conception d'applications basés sur les événements. Pub/Sub vous permet d'intégrer de nombreux systèmes qui exportent des événements vers Pub/Sub.
  • Réplication des données entre des bases de données. Pub/Sub est couramment utilisé pour distribuer les événements de modification à partir de bases de données. Ces événements peuvent être utilisés pour créer une vue de l'état de la base de données et un historique des états.
  • Traitement en parallèle et workflows. Vous pouvez distribuer efficacement de nombreuses tâches entre plusieurs nœuds de calcul en utilisant des messages Pub/Sub pour communiquer avec eux. Il peut s'agir, par exemple, de compresser des fichiers texte, d'envoyer des notifications par e-mail, d'évaluer des modèles d'IA et de reformater des images.
  • Bus d'événement d'entreprise. Vous pouvez créer un bus de partage de données en temps réel à l'échelle de l'entreprise, en répartissant les événements commerciaux, les mises à jour de base de données et les événements d'analyse dans votre organisation.
  • Diffusion de données en streaming depuis des applications, des services ou des appareils IoT. Par exemple, une application SaaS peut publier un flux d'événements en temps réel. Un capteur résidentiel peut également diffuser des données vers Pub/Sub pour les utiliser dans d'autres Trusted Cloud by S3NS produits via un pipeline de traitement des données.
  • Actualisation des caches distribués. Par exemple, une application peut publier des événements d'invalidation pour mettre à jour les ID des objets modifiés.
  • Équilibrage de charge pour plus de fiabilité. Par exemple, les instances d'un service peuvent être déployées sur Compute Engine dans plusieurs zones, mais s'abonner à un sujet commun. Lorsque le service échoue dans une zone, les autres utilisateurs peuvent récupérer automatiquement la charge.

Étapes suivantes