GSP095

Présentation
Pub/Sub est un service de messagerie permettant d'échanger des données d'événement entre des applications et des services. En dissociant les expéditeurs et les destinataires, ce service permet une communication sécurisée à disponibilité élevée entre des applications développées indépendamment. Du fait de sa durabilité et de sa faible latence, Pub/Sub est couramment utilisé par les développeurs pour la mise en œuvre de workflows asynchrones, la distribution de notifications d'événements et la diffusion de flux de données générées par différents processus et appareils.
Points abordés
Dans cet atelier, vous allez :
- créer, supprimer et lister des abonnements et des sujets Pub/Sub ;
- publier des messages dans un sujet ;
- apprendre à utiliser un abonnement pull.
Prérequis
Cet atelier s'adresse aux débutants. Il ne nécessite aucune connaissance particulière de Pub/Sub. Vous allez découvrir les principes de base pour configurer et utiliser ce service Google Cloud.
Préparation
Avant de cliquer sur le bouton "Démarrer l'atelier"
Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.
Cet atelier pratique vous permet de suivre les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Des identifiants temporaires vous sont fournis pour vous permettre de vous connecter à Google Cloud le temps de l'atelier.
Pour réaliser cet atelier :
- Vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome).
Remarque : Ouvrez une fenêtre de navigateur en mode incognito (recommandé) ou de navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
- Vous disposez d'un temps limité. N'oubliez pas qu'une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Utilisez uniquement le compte de participant pour cet atelier. Si vous utilisez un autre compte Google Cloud, des frais peuvent être facturés à ce compte.
Démarrer l'atelier et se connecter à la console Google Cloud
-
Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, une boîte de dialogue s'affiche pour vous permettre de sélectionner un mode de paiement.
Sur la gauche, vous trouverez le panneau "Détails concernant l'atelier", qui contient les éléments suivants :
- Le bouton "Ouvrir la console Google Cloud"
- Le temps restant
- Les identifiants temporaires que vous devez utiliser pour cet atelier
- Des informations complémentaires vous permettant d'effectuer l'atelier
-
Cliquez sur Ouvrir la console Google Cloud (ou effectuez un clic droit et sélectionnez Ouvrir le lien dans la fenêtre de navigation privée si vous utilisez le navigateur Chrome).
L'atelier lance les ressources, puis ouvre la page "Se connecter" dans un nouvel onglet.
Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.
Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte.
-
Si nécessaire, copiez le nom d'utilisateur ci-dessous et collez-le dans la boîte de dialogue Se connecter.
{{{user_0.username | "Username"}}}
Vous trouverez également le nom d'utilisateur dans le panneau "Détails concernant l'atelier".
-
Cliquez sur Suivant.
-
Copiez le mot de passe ci-dessous et collez-le dans la boîte de dialogue Bienvenue.
{{{user_0.password | "Password"}}}
Vous trouverez également le mot de passe dans le panneau "Détails concernant l'atelier".
-
Cliquez sur Suivant.
Important : Vous devez utiliser les identifiants fournis pour l'atelier. Ne saisissez pas ceux de votre compte Google Cloud.
Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés.
-
Accédez aux pages suivantes :
- Acceptez les conditions d'utilisation.
- N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
- Ne vous inscrivez pas à des essais sans frais.
Après quelques instants, la console Cloud s'ouvre dans cet onglet.
Remarque : Pour accéder aux produits et services Google Cloud, cliquez sur le menu de navigation ou saisissez le nom du service ou du produit dans le champ Recherche.
Activer Cloud Shell
Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud. Cloud Shell vous permet d'accéder via une ligne de commande à vos ressources Google Cloud.
-
Cliquez sur Activer Cloud Shell
en haut de la console Google Cloud.
-
Passez les fenêtres suivantes :
- Accédez à la fenêtre d'informations de Cloud Shell.
- Autorisez Cloud Shell à utiliser vos identifiants pour effectuer des appels d'API Google Cloud.
Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET : . Le résultat contient une ligne qui déclare l'ID_PROJET pour cette session :
Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}
gcloud
est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.
- (Facultatif) Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list
- Cliquez sur Autoriser.
Résultat :
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
To set the active account, run:
$ gcloud config set account `ACCOUNT`
- (Facultatif) Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project
Résultat :
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Remarque : Pour consulter la documentation complète sur gcloud
, dans Google Cloud, accédez au guide de présentation de la gcloud CLI.
Principes de base de Pub/Sub
Comme mentionné précédemment, Pub/Sub est un service de messagerie asynchrone à l'échelle mondiale. Avec Pub/Sub, trois termes reviennent souvent : sujets
, publication
(par des diffuseurs) et abonnement
.
-
Un sujet
est une chaîne partagée qui permet aux applications de communiquer entre elles via un fil de discussion commun.
-
Les diffuseurs transmettent (ou publient
) un message dans un sujet Cloud Pub/Sub.
-
Les abonnés créent un abonnement
à un sujet, pour lequel ils vont extraire directement des messages de leur abonnement ou configurer des webhooks (pour les abonnements push). Les abonnés doivent accuser réception de chaque message pendant une période configurable.
En bref, un producteur publie des messages dans un sujet et un consommateur crée un abonnement à un sujet pour recevoir les messages de celui-ci.
Tâche 1 : Sujets Pub/Sub
Pub/Sub est préinstallé dans Cloud Shell. Par conséquent, aucune installation ni configuration ne sont requises pour commencer à utiliser le service.
- Exécutez la commande suivante pour créer un sujet nommé
myTopic
:
gcloud pubsub topics create myTopic
Tester la tâche terminée
Cliquez sur Vérifier ma progression pour valider la tâche exécutée. Si votre tâche a bien été exécutée, vous recevez une note d'évaluation.
Créer un sujet Pub/Sub
- Pour faire bonne mesure, créez deux autres sujets, respectivement nommés
Test1
et Test2
:
gcloud pubsub topics create Test1
gcloud pubsub topics create Test2
- Pour visualiser les trois sujets que vous venez de créer, exécutez la commande suivante :
gcloud pubsub topics list
Le résultat doit se présenter comme suit :
---
messageStoragePolicy:
allowedPersistenceRegions:
- us-central1
name: projects/qwiklabs-gcp-01-af5b4aaa2d32/topics/myTopic
---
messageStoragePolicy:
allowedPersistenceRegions:
- us-central1
name: projects/qwiklabs-gcp-01-af5b4aaa2d32/topics/Test1
---
messageStoragePolicy:
allowedPersistenceRegions:
- us-central1
name: projects/qwiklabs-gcp-01-af5b4aaa2d32/topics/Test2
- Passons au nettoyage. Supprimez
Test1
et Test2
en exécutant les commandes suivantes :
gcloud pubsub topics delete Test1
gcloud pubsub topics delete Test2
- Exécutez à nouveau la commande
gcloud pubsub topics list
pour vérifier que les sujets ont bien été supprimés :
gcloud pubsub topics list
Vous devez obtenir le résultat suivant :
---
name: projects/qwiklabs-gcp-3450558d2b043890/topics/myTopic
Tâche 2 : Abonnements Pub/Sub
Maintenant que vous savez créer, afficher et supprimer des sujets, passons aux abonnements.
- Exécutez la commande suivante pour créer un abonnement appelé
mySubscription
associé au sujet myTopic
:
gcloud pubsub subscriptions create --topic myTopic mySubscription
Tester la tâche terminée
Cliquez sur Vérifier ma progression pour valider la tâche exécutée. Si votre tâche a bien été exécutée, vous recevez une note d'évaluation.
Créer un abonnement Pub/Sub
- Ajoutez deux autres abonnements à
myTopic
. Exécutez les commandes suivantes pour créer les abonnements Test1
et Test2
:
gcloud pubsub subscriptions create --topic myTopic Test1
gcloud pubsub subscriptions create --topic myTopic Test2
- Exécutez la commande suivante pour lister les abonnements associés à myTopic :
gcloud pubsub topics list-subscriptions myTopic
Le résultat doit se présenter comme suit :
---
projects/qwiklabs-gcp-3450558d2b043890/subscriptions/Test2
---
projects/qwiklabs-gcp-3450558d2b043890/subscriptions/Test1
---
projects/qwiklabs-gcp-3450558d2b043890/subscriptions/mySubscription
Tester vos connaissances
Voici quelques questions à choix multiples qui vous permettront de mieux maîtriser les concepts abordés lors de cet atelier. Répondez-y du mieux que vous le pouvez.
- Maintenant, supprimez les abonnements
Test1
et Test2
. Exécutez les commandes suivantes :
gcloud pubsub subscriptions delete Test1
gcloud pubsub subscriptions delete Test2
- Vérifiez que les abonnements
Test1
et Test2
ont bien été supprimés. Exécutez à nouveau la commande list-subscriptions
:
gcloud pubsub topics list-subscriptions myTopic
Vous devez obtenir le résultat suivant :
---
projects/qwiklabs-gcp-3450558d2b043890/subscriptions/mySubscription
Tâche 3 : Publier et récupérer un seul message avec Pub/Sub
Nous allons maintenant apprendre à publier un message dans un sujet Pub/Sub.
- Exécutez la commande suivante pour publier le message
"hello"
dans le sujet créé précédemment (myTopic
) :
gcloud pubsub topics publish myTopic --message "Hello"
- Publiez un ou deux autres messages dans
myTopic
en exécutant les commandes suivantes (remplacez <VOTRE NOM>
par votre nom, et <PLAT>
par un plat que vous aimez) :
gcloud pubsub topics publish myTopic --message "Le nom du diffuseur est <VOTRE NOM>"
gcloud pubsub topics publish myTopic --message "Le diffuseur aime manger du/de la <PLAT>"
gcloud pubsub topics publish myTopic --message "Le diffuseur trouve Pub/Sub génial"
Utilisez ensuite la commande pull
pour récupérer les messages de votre sujet. La commande pull est basée sur un abonnement et doit donc fonctionner, car nous avons précédemment configuré l'abonnement mySubscription
pour le sujet myTopic
.
- Exécutez la commande suivante pour récupérer les messages que vous venez de publier à partir du sujet Pub/Sub :
gcloud pubsub subscriptions pull mySubscription --auto-ack
Le résultat doit se présenter comme suit :

Que se passe-t-il ? Vous avez publié quatre messages dans votre sujet, mais vous n'en avez récupéré qu'un.
À ce stade, il est important de mentionner certaines caractéristiques de la commande pull
qui déconcertent souvent les développeurs :
- L'utilisation de la commande pull sans option ne permet de récupérer qu'un seul message, même si vous êtes abonné à un sujet qui en contient plusieurs.
- Une fois qu'un message a été récupéré à l'aide d'une commande pull spécifique basée sur un abonnement, vous ne pouvez plus accéder à ce message à l'aide de la commande pull.
-
Pour comprendre le deuxième point, exécutez la dernière commande trois fois de plus. Les messages publiés auparavant s'affichent alors.
-
Exécutez la commande une quatrième fois. Puisqu'il n'y a plus aucun message à récupérer, vous obtenez le résultat suivant :
gcpstaging20394_student@cloudshell:~ (qwiklabs-gcp-3450558d2b043890)$ gcloud pubsub subscriptions pull mySubscription --auto-ack
Listed 0 items.
Dans la dernière section, vous allez découvrir comment récupérer plusieurs messages à partir d'un sujet à l'aide d'une option
.
Tâche 4 : Extraire tous les messages d'un abonnement avec Pub/Sub
Puisque vous avez récupéré tous les messages de votre sujet dans l'exercice précédent, publiez quelques messages dans myTopic
.
- Exécutez les commandes suivantes :
gcloud pubsub topics publish myTopic --message "Le diffuseur commence à maîtriser Pub/Sub"
gcloud pubsub topics publish myTopic --message "Le diffuseur se demande si tous les messages vont être extraits"
gcloud pubsub topics publish myTopic --message "Le diffuseur va devoir faire un test pour le découvrir"
- Ajoutez une
option
à votre commande afin de récupérer les trois messages en une seule requête.
Vous ne l'avez peut-être pas remarqué, mais nous utilisons une option depuis le début : la partie --auto-ack
de la commande pull
est une option de mise en forme des messages récupérés qui permet de les présenter dans des zones délimitées.
limit
est une autre option qui définit une limite maximale pour le nombre de messages à récupérer.
- Attendez quelques instants que les messages soient créés. Exécutez la commande pull avec l'option
limit
:
gcloud pubsub subscriptions pull mySubscription --limit=3
Le résultat doit se présenter comme suit :

Vous savez maintenant comment ajouter des options à une commande Pub/Sub pour récupérer davantage de messages. Vous êtes bien parti pour devenir un expert de Pub/Sub.
Félicitations !
Au cours de cet atelier, vous avez découvert les principes de base de Pub/Sub, à savoir les sujets, les abonnements, la commande pull et les options.
Atelier suivant
Cet atelier fait partie d'une série appelée "Qwik Starts". Les ateliers de cette série sont conçus pour vous donner un aperçu des nombreuses fonctionnalités proposées par Google Cloud. Pour suivre un autre atelier, recherchez "Qwik Starts" dans le catalogue.
Formations et certifications Google Cloud
Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.
Dernière mise à jour du manuel : 10 mars 2025
Dernier test de l'atelier : 10 mars 2025
Copyright 2025 Google LLC. Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.