Choisir un type d'abonnement

Ce document vous aide à choisir le type de service Pub/Sub approprié adapté aux besoins de votre entreprise.

Avant de commencer

Tableau comparatif des abonnements Pub/Sub

Consultez le tableau suivant qui vous aidera à choisir le système de distribution approprié pour votre application :

Fonctionnalités compatibles avec les abonnements Pub/Sub
Cas d'utilisation Abonnement pull
  • Volume important de messages (Go par seconde)
  • L'efficacité et le débit du traitement des messages sont essentiels.
  • Les environnements dans lesquels un point de terminaison HTTPS public un certificat SSL non autosigné ne peut pas être configuré.
Abonnement push
  • Plusieurs sujets devant être traités par le même webhook.
  • Abonnés aux fonctions Cloud Run et à l'environnement standard App Engine
  • Les environnements dans lesquels les dépendances Google Cloud (comme les identifiants et la bibliothèque cliente) ne peuvent pas être configurés.
Exporter l'abonnement
  • Volume important de messages pouvant évoluer à la hausse jusqu'à plusieurs des millions de messages par seconde.
  • Les messages sont envoyés directement à une ressource Google Cloud sans traitement supplémentaire.
Points de terminaison Abonnement pull

Tout appareil connecté à Internet et disposant d'identifiants autorisés peut appeler l'API Pub/Sub.

Abonnement push
  • Un serveur HTTPS disposant d'un certificat non autosigné accessible sur le Web public.
  • Le point de terminaison de réception peut être dissocié de l'abonnement Pub/Sub. Ainsi, les messages provenant de plusieurs abonnements sont envoyés à un seul point de terminaison.
Exporter un abonnement
  • Ensemble de données et table BigQuery pour un abonnement BigQuery
  • Bucket Cloud Storage pour un abonnement Cloud Storage.
Équilibrage de charge Abonnement pull
  • Plusieurs abonnés peuvent effectuer des appels pull au même abonnement "partagé".
  • Chaque abonné reçoit un sous-ensemble de messages.
Abonnement push

Les points de terminaison push peuvent être des équilibreurs de charge.

Exporter l'abonnement

Le service Pub/Sub équilibre automatiquement la charge.

Configuration Abonnement pull

Aucune configuration n'est requise.

Abonnement push
  • Aucune configuration n'est requise pour les applications App Engine dans dans le même projet que l'abonné.
  • La validation des points de terminaison push n'est pas nécessaire dans la console Google Cloud.
  • Les points de terminaison doivent être accessibles à l'aide de noms DNS certificats SSL installés.
Exporter un abonnement
  • Un ensemble de données et une table BigQuery doivent exister pour l'abonnement BigQuery, configurés avec les autorisations appropriées.
  • Un bucket Cloud Storage doit exister pour Abonnement Cloud Storage, configuré disposant des autorisations appropriées.
Contrôle de flux Abonnement pull

Le client abonné contrôle la fréquence de distribution. L'abonné peut modifier de façon dynamique le délai d'accusé de réception, que le traitement des messages soit arbitrairement long.

Abonnement push

Le serveur Pub/Sub applique un contrôle de flux automatiquement. Il n'est pas nécessaire de gérer le flux de messages côté client. Cependant, il est possible d'indiquer que le client ne peut pas gérer pour charger le message actuel en renvoyant une erreur HTTP.

Exporter un abonnement

Le serveur Pub/Sub applique automatiquement un contrôle de flux pour optimiser l'écriture de messages dans une ressource Google Cloud.

Efficacité et débit Abonnement pull

Atteint un débit élevé avec un processeur et une bande passante peu exploités, permettant ainsi une distribution et des accusés de réception groupés, ainsi qu'une consommation massivement parallèle. Peut être inefficace si une scrutation agressive est utilisée pour réduire le délai de distribution des messages.

Abonnement push

Distribue un message par requête et limite le nombre maximal de messages en attente.

Exporter un abonnement

La scalabilité est gérée de manière dynamique par les serveurs Pub/Sub.

Quand utiliser un abonnement d'exportation

Sans abonnement d'exportation, vous avez besoin d'un abonnement pull ou push et d'un abonné (tel que Dataflow) pour lire les messages et les écrire dans une ressource Google Cloud. Les frais liés à l'exécution d'un job Dataflow n'est pas nécessaire lorsque les messages nécessitent un traitement supplémentaire avant d'être stockées.

Les abonnements d'exportation présentent les avantages suivants :

  • Déploiement simple. Vous pouvez configurer un abonnement à l'exportation via un un workflow unique dans la console, Google Cloud CLI, la bibliothèque cliente, ou l'API Pub/Sub.

  • Coûts réduits Réduction des coûts et de la latence supplémentaires Pipelines Pub/Sub qui incluent des jobs Dataflow Cette optimisation des coûts est utile pour les systèmes de messagerie qui n'ont pas besoin un traitement supplémentaire avant le stockage.

  • Surveillance minimale Les abonnements d'exportation font partie du service Pub/Sub multi-tenant et ne nécessitent pas d'exécuter des tâches de surveillance distinctes.

  • Flexibilité. Un abonnement BigQuery peut utiliser schéma du sujet auquel il est associé, qui n'est pas disponible avec le modèle Dataflow de base pour écrire Pub/Sub vers BigQuery. De même, Un abonnement Cloud Storage offre des options configurables de traitement des fichiers par lot en fonction de la taille du fichier et du temps écoulé, qui ne sont pas configurables dans le modèle Dataflow de base pour écrire Pub/Sub vers Cloud Storage.

Toutefois, un pipeline Dataflow reste recommandé pour les systèmes Pub/Sub où certaines données est nécessaire pour que les données soient stockées dans à une ressource Google Cloud telle qu'une table BigQuery bucket Cloud Storage.

Pour apprendre à diffuser des données depuis Pub/Sub vers BigQuery avec transformation à l'aide de Dataflow, consultez la section Flux depuis Pub/Sub vers BigQuery.

Pour apprendre à diffuser des données depuis Pub/Sub vers Cloud Storage avec transformation à l'aide de Dataflow, consultez Diffusez des messages depuis Pub/Sub à l'aide de Dataflow.

Étape suivante

Découvrez le flux de travail de chaque type d'abonnement: