Choisir un type d'abonnement

Ce document vous aide à choisir le type d'abonnement Pub/Sub adapté aux besoins de votre entreprise.

Avant de commencer

Table de comparaison 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
  • Grand volume de messages (Go par seconde).
  • L'efficacité et le débit du traitement des messages sont essentiels.
  • Environnements dans lesquels un point de terminaison HTTPS public avec un certificat SSL non autosigné n'est pas possible à configurer.
Abonnement push
  • Plusieurs sujets qui doivent être traités par le même webhook
  • Abonnés à l'environnement standard App Engine et Cloud Functions
  • Environnements dans lesquels les dépendances Google Cloud (telles que les identifiants et la bibliothèque cliente) ne peuvent pas être configurées
Exporter l'abonnement
  • Un grand volume de messages peut évoluer jusqu'à plusieurs millions de messages par seconde.
  • Les messages sont directement envoyés à 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 avec un certificat non autosigné accessible sur le Web public.
  • Le point de terminaison de réception peut être découplé de l'abonnement Pub/Sub, de sorte que les messages de plusieurs abonnements sont envoyés à un seul point de terminaison.
Exporter l'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 d'extraction vers le 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 nécessaire pour les applications App Engine situées dans le même projet que l'abonné.
  • La vérification des points de terminaison push n'est pas requise dans la console Google Cloud.
  • Les points de terminaison doivent être accessibles à l'aide de noms DNS et disposer de certificats SSL installés.
Exporter l'abonnement
  • Un ensemble de données et une table BigQuery doivent exister pour l'abonnement BigQuery et être configurés avec les autorisations appropriées.
  • Un bucket Cloud Storage doit exister pour l'abonnement Cloud Storage et configuré avec les autorisations appropriées.
Contrôle de flux Abonnement pull

Le client abonné contrôle la fréquence de distribution. L'abonné peut modifier de manière dynamique le délai d'accusé de réception, ce qui permet au traitement des messages d'être arbitrairement long.

Abonnement push

Le serveur Pub/Sub met automatiquement en œuvre un contrôle de flux. Il n'est pas nécessaire de gérer le flux de messages côté client. Toutefois, il est possible d'indiquer que le client ne peut pas gérer la charge de messages actuelle en renvoyant une erreur HTTP.

Exporter l'abonnement

Le serveur Pub/Sub met automatiquement en œuvre un contrôle de flux pour optimiser l'écriture des messages sur une ressource Google Cloud.

Efficacité et débit Abonnement pull

Atteint un débit élevé avec une faible capacité de processeur et de bande passante en permettant la distribution par lot, les accusés de réception et la consommation massivement parallèle. Cette approche peut s'avérer inefficace si une interrogation 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 l'abonnement

L'évolutivité est gérée de manière dynamique par les serveurs Pub/Sub.

Quand utiliser un abonnement dédié à l'exportation ?

Sans abonnement à l'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. La surcharge liée à l'exécution d'un job Dataflow n'est pas nécessaire lorsque les messages ne nécessitent aucun traitement supplémentaire avant d'être stockés.

L'exportation des abonnements présente les avantages suivants:

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

  • Coûts réduits. Réduit le coût supplémentaire et la latence des pipelines Pub/Sub similaires incluant des tâches Dataflow. Cette optimisation des coûts est utile pour les systèmes de messagerie qui ne nécessitent pas de traitement supplémentaire avant le stockage.

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

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

Toutefois, un pipeline Dataflow est toujours recommandé pour les systèmes Pub/Sub où une transformation de données est requise avant le stockage des données dans une ressource Google Cloud, telle qu'une table BigQuery ou un bucket Cloud Storage.

Pour découvrir comment diffuser des données en flux continu depuis Pub/Sub vers BigQuery avec transformation à l'aide de Dataflow, consultez la page Diffuser des données depuis Pub/Sub vers BigQuery.

Pour découvrir comment diffuser des données en flux continu depuis Pub/Sub vers Cloud Storage avec transformation à l'aide de Dataflow, consultez la page Diffuser des messages en continu depuis Pub/Sub à l'aide de Dataflow.

Étapes suivantes

Découvrez le workflow pour chaque type d'abonnement: