Les abonnés peuvent ne pas être en mesure de gérer les messages pour diverses raisons. Par exemple, des problèmes temporaires peuvent se produire lors de la récupération des données nécessaires au traitement d'un message. Ou bien, un message peut se présenter dans un format que l'abonné n'attend pas.
Cette page explique comment gérer ces échecs de traitement à l'aide d'une stratégie de nouvelle tentative d'abonnement ou en transférant les messages non distribués vers un file d'attente de lettres mortes (également appelé file d'attente de lettres mortes).
Notez que ces fonctionnalités ne sont pas compatibles avec Dataflow. Pour plus d'informations, consultez la section Fonctionnalités Pub/Sub non compatibles de la documentation Dataflow.
Stratégie de nouvelle tentative d'abonnement
Si Pub/Sub tente de distribuer un message, mais que l'abonné ne peut pas l'accuser réception, Pub/Sub tente automatiquement de renvoyer le message. Cette tentative de renvoi est connue sous le nom de "politique de nouvelle tentative d'abonnement". Vous ne pouvez pas activer ni désactiver cette fonctionnalité, mais vous pouvez choisir le type de règle de nouvelle tentative à utiliser.
Lorsque vous créez et configurez votre abonnement pour la première fois, vous pouvez choisir d'utiliser l'une des stratégies de nouvelle tentative suivantes : nouvelle distribution immédiate ou intervalle exponentiel entre les tentatives. Par défaut, les abonnements sont renvoyés immédiatement.
Nouvelle livraison immédiate
Par défaut, Pub/Sub tente de renvoyer le message immédiatement (et éventuellement au même client abonné). Toutefois, si les conditions qui ont empêché l'accusé de réception du message n'ont pas changé, une nouvelle livraison immédiate peut entraîner des problèmes. Dans ce cas, il est possible que Pub/Sub renvoie plusieurs messages dont la réception n'est pas confirmée.
Pour résoudre les problèmes immédiats de renvoi, Pub/Sub vous permet de configurer une règle d'intervalle exponentiel entre les tentatives.
Intervalle exponentiel entre les tentatives
L'intervalle exponentiel entre les tentatives vous permet d'ajouter des délais progressivement plus longs entre les tentatives. Après le premier échec de distribution, Pub/Sub attend un intervalle minimal entre les tentatives avant de réessayer. Pour chaque échec consécutif d'un message, un délai supplémentaire est ajouté au délai, jusqu'à un délai maximal (0 et 600 secondes).
Les intervalles de retard maximal et minimal ne sont pas fixes et doivent être configurés en fonction de facteurs locaux de votre application.
Tenez compte des points suivants concernant l'intervalle exponentiel entre les tentatives:
- L'intervalle exponentiel entre les tentatives se déclenche dans les actions suivantes :
- Lorsqu'un accusé de réception négatif est reçu.
- Lorsque le délai de confirmation d'un message expire.
- L'intervalle exponentiel entre les tentatives n'est appliqué que par message, plutôt qu'à tous les messages d'un abonnement (global).
- Lorsque vous utilisez l'intervalle exponentiel entre les tentatives, Pub/Sub continue de distribuer d'autres messages, même si les messages précédents ont reçu des accusés de réception négatifs (sauf si vous utilisez la distribution de messages ordonnés).
Configurer un intervalle exponentiel entre les tentatives
Console
Lorsque vous créez un abonnement, vous pouvez configurer une stratégie d'intervalle exponentiel entre les tentatives en procédant comme suit :
Dans la console Google Cloud, accédez à la page Abonnements Pub/Sub.
Cliquez sur Créer un abonnement.
Dans le champ ID d'abonnement, saisissez un nom.
Pour plus d'informations sur l'attribution d'un nom à un abonnement, consultez Consignes pour nommer un sujet ou un abonnement.
Choisissez ou créez un sujet dans le menu déroulant.
L'abonnement reçoit les messages du sujet.
Sélectionnez un type de diffusion.
Sous Règle de nouvelle tentative, sélectionnez Réessayer après un intervalle exponentiel entre les tentatives.
Saisissez un intervalle minimal entre les tentatives et l'intervalle maximal entre les tentatives, compris entre 0 et 600 secondes.
Les valeurs par défaut sont de 10 secondes pour l'intervalle minimal et de 600 secondes pour l'intervalle maximal.
Cliquez sur Créer.
gcloud
Pour créer un abonnement avec une stratégie d'intervalle exponentiel entre les tentatives, exécutez la commande gcloud pubsub create
avec les options indiquées ci-dessous :
gcloud pubsub subscriptions create SUBSCRIPTION_ID \ --topic=TOPIC_ID \ --min-retry-delay=MIN_RETRY_DELAY \ --max-retry-delay=MAX_RETRY_DELAY
Sujet de lettres mortes
Si le service Pub/Sub tente de distribuer un message, mais que l'abonné ne peut pas l'accuser réception, Pub/Sub peut transférer le message impossible à distribuer dans un sujet de lettre morte.
Fonctionnement des sujets de lettres mortes avec Pub/Sub
Un file d'attente de lettres mortes est une propriété d'abonnement, et non une propriété de sujet. Cela signifie que vous définissez un file d'attente de lettres mortes lorsque vous créez un abonnement, et non lorsque vous créez un sujet.
Si vous créez un file d'attente de lettres mortes, vous pouvez définir les propriétés d'abonnement suivantes:
Nombre maximal de tentatives de distribution: valeur numérique indiquant le nombre de tentatives de distribution effectuées par Pub/Sub pour un message spécifique. Si le client abonné ne peut pas accuser réception du message dans le délai défini pour le nombre de tentatives de distribution, le message est transféré vers un file d'attente de lettres mortes.
- Valeur par défaut = 5
- Valeur maximale = 100
- Valeur minimale = 5
Projet avec le sujet de lettres mortes : si le sujet de lettres mortes se trouve dans un projet différent de l'abonnement, vous devez spécifier le projet avec le sujet de lettres mortes. Définissez le file d'attente de lettres mortes sur un sujet différent de celui auquel l'abonnement est associé.
Comment le nombre maximal de tentatives de livraison est-il calculé ?
Pub/Sub ne compte les tentatives de distribution que lorsqu'un file d'attente de lettres mortes est correctement configuré et qu'il inclut les autorisations IAM appropriées.
Le nombre maximal de tentatives de distribution est approximatif, car Pub/Sub transfère au mieux les messages non distribuables.
Le nombre suivi de tentatives de distribution d'un message peut également être réinitialisé, en particulier pour un abonnement pull avec des abonnés inactifs. Par conséquent, les messages peuvent être distribués au client abonné plus de fois que le nombre maximal de tentatives de distribution configuré.
Configurer un file d'attente de lettres mortes
Pour que vous puissiez configurer un file d'attente de lettres mortes, le sujet source doit d'abord être associé à un abonnement. Vous pouvez spécifier un file d'attente de lettres mortes lors de la création de l'abonnement ou mettre à jour un abonnement existant pour en utiliser file d'attente de lettres mortes.
Voici le workflow permettant d'activer la gestion des lettres mortes sur un abonnement.
Créez le file d'attente de lettres mortes. Ce sujet est distinct du sujet source.
Définissez le file d'attente de lettres mortes sur l'abonnement du sujet source.
Pour éviter de perdre des messages du file d'attente de lettres mortes, associez au moins un autre abonnement à ce sujet. L'abonnement secondaire reçoit les messages du file d'attente de lettres mortes.
Attribuez les rôles d'éditeur et d'abonné au compte de service Pub/Sub. Pour en savoir plus, consultez Accorder des autorisations de transfert.
Définir un file d'attente de lettres mortes sur un nouvel abonnement
Vous pouvez créer un abonnement et définir un file d'attente de lettres mortes à l'aide de la console Google Cloud, de Google Cloud CLI, des bibliothèques clientes ou de l'API Pub/Sub.
Console
Pour créer un abonnement et définir un sujet de lettres mortes, procédez comme suit :
Dans la console Google Cloud, accédez à la page Abonnements.
Cliquez sur Créer un abonnement.
Saisissez l'ID de l'abonnement.
Choisissez ou créez un sujet dans le menu déroulant.
L'abonnement reçoit les messages du sujet.
Dans la section Sujet de lettres mortes, sélectionnez Activer la gestion des lettres mortes.
Choisissez ou créez un sujet des lettres mortes dans le menu déroulant.
Si le file d'attente de lettres mortes choisi n'est associé à aucun abonnement, le système vous invite à en créer un.
Dans le champ Nombre maximal de tentatives de distribution, indiquez un entier compris entre 5 et 100.
Cliquez sur Créer.
Le panneau des détails affiche une liste des tâches possibles. Si l'un des éléments affiche une icône d'erreur
, cliquez sur la tâche concernée pour résoudre le problème.
gcloud
Pour créer un abonnement et définir un sujet de lettres mortes, utilisez la commande gcloud pubsub subscriptions create
:
gcloud pubsub subscriptions create subscription-id \ --topic=topic-id \ --dead-letter-topic=dead-letter-topic-name \ [--max-delivery-attempts=max-delivery-attempts] \ [--dead-letter-topic-project=dead-letter-topic-project]
C++
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage C++ qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour C++.
C#
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage C# qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour C#.
Go
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Go qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Go.
Java
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Java qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Java.
Node.js
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Node.js qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Node.js.
Node.js
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Node.js qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Node.js.
PHP
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage PHP qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour PHP.
Python
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Python qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Python.
Ruby
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Ruby qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Ruby.
Ruby
Avant d'essayer cet exemple, suivez les instructions de configuration de Ruby décrites dans le guide de démarrage rapide de Pub/Sub à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub Ruby.
Pour vous authentifier auprès de Pub/Sub, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Définir un file d'attente de lettres mortes pour un abonnement existant
Vous pouvez mettre à jour un abonnement et définir un file d'attente de lettres mortes à l'aide de la console Google Cloud, de Google Cloud CLI, des bibliothèques clientes ou de l'API Pub/Sub.
Console
Pour mettre à jour un abonnement et définir une file d'attente de lettres mortes, procédez comme suit.
Dans la console Google Cloud, accédez à la page Abonnements.
À côté de l'abonnement à mettre à jour, cliquez sur Autres actions more_vert.
Dans le menu contextuel, sélectionnez Modifier.
Dans la section Sujet de lettres mortes, sélectionnez Activer la gestion des lettres mortes.
Choisissez ou créez un sujet dans le menu déroulant.
Si le sujet choisi n'est associé à aucun abonnement, le système vous invite à en créer un.
Dans le champ Nombre maximal de tentatives de distribution, indiquez un entier compris entre 5 et 100.
Cliquez sur Update (Mettre à jour).
Le panneau des détails affiche une liste des tâches possibles. Si l'un des éléments affiche une icône d'erreur
, cliquez sur la tâche concernée pour résoudre le problème.
gcloud
Pour mettre à jour un abonnement et définir un sujet de lettres mortes, exécutez la commande gcloud pubsub subscriptions update
:
gcloud pubsub subscriptions update subscription-id \ --dead-letter-topic=dead-letter-topic-name \ [--max-delivery-attempts=max-delivery-attempts] \ [--dead-letter-topic-project=dead-letter-topic-project]
C++
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage C++ qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour C++.
C#
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage C# qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour C#.
Go
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Go qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Go.
Java
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Java qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Java.
Node.js
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Node.js qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Node.js.
PHP
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage PHP qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour PHP.
Python
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Python qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Python.
Ruby
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Ruby qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Ruby.
Ruby
Avant d'essayer cet exemple, suivez les instructions de configuration de Ruby décrites dans le guide de démarrage rapide de Pub/Sub à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub Ruby.
Pour vous authentifier auprès de Pub/Sub, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Accorder des rôles IAM pour utiliser des sujets de lettres mortes
Pour transférer des messages non distribuables vers un sujet de lettres mortes, Pub/Sub doit être autorisé à effectuer les opérations suivantes :
- Publier des messages sur le sujet
- Confirmez les messages, ce qui les supprime de l'abonnement.
Pub/Sub crée et gère un compte de service pour chaque projet : service-project-number@gcp-sa-pubsub.iam.gserviceaccount.com
.
Vous pouvez accorder des autorisations de transfert en attribuant des rôles d'éditeur et d'abonné à ce compte de service.
Console
Pour autoriser Pub/Sub à publier des messages dans un file d'attente de lettres mortes, procédez comme suit:
Dans la console Google Cloud, accédez à la page Abonnements.
Cliquez sur le nom de l'abonnement contenant le file d'attente de lettres mortes.
Cliquez sur l'onglet Lettres mortes.
Pour attribuer un rôle d'éditeur, cliquez sur Attribuer le rôle d'éditeur. Si le rôle d'éditeur a bien été attribué, une coche bleue
s'affiche.Pour attribuer un rôle d'abonné, cliquez sur Attribuer le rôle d'abonné. Si le rôle d'éditeur a bien été attribué, une coche bleue
s'affiche.
gcloud
Pour autoriser Pub/Sub à publier des messages dans le sujet de lettres mortes, exécutez la commande suivante :
PUBSUB_SERVICE_ACCOUNT="service-project-number@gcp-sa-pubsub.iam.gserviceaccount.com" gcloud pubsub topics add-iam-policy-binding dead-letter-topic-name \ --member="serviceAccount:$PUBSUB_SERVICE_ACCOUNT"\ --role="roles/pubsub.publisher"
Pour autoriser Pub/Sub à accuser réception des messages non distribués, exécutez la commande suivante :
PUBSUB_SERVICE_ACCOUNT="service-project-number@gcp-sa-pubsub.iam.gserviceaccount.com" gcloud pubsub subscriptions add-iam-policy-binding subscription-id \ --member="serviceAccount:$PUBSUB_SERVICE_ACCOUNT"\ --role="roles/pubsub.subscriber"
Suivre les tentatives de livraison
Une fois que vous avez activé un file d'attente de lettres mortes pour un abonnement, chaque message de cet abonnement comporte un champ qui spécifie le nombre de tentatives de distribution:
Les messages reçus à partir d'un abonnement pull incluent le champ
delivery_attempt
.Les messages reçus à partir d'un abonnement push incluent le champ
deliveryAttempt
.
Les exemples suivants montrent comment obtenir le nombre de tentatives de livraison :
C++
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage C++ qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour C++.
C#
Avant d'essayer cet exemple, suivez les instructions de configuration de C# décrites dans le guide de démarrage rapide de Pub/Sub à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub C#.
Pour vous authentifier auprès de Pub/Sub, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration de Go décrites dans le guide de démarrage rapide de Pub/Sub à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub Go.
Pour vous authentifier auprès de Pub/Sub, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration de Java décrites dans le guide de démarrage rapide de Pub/Sub à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub Java.
Pour vous authentifier auprès de Pub/Sub, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration de Node.js décrites dans le guide de démarrage rapide de Pub/Sub à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub Node.js.
Pour vous authentifier auprès de Pub/Sub, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
PHP
Avant d'essayer cet exemple, suivez les instructions de configuration de PHP décrites dans le guide de démarrage rapide de Pub/Sub à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub PHP.
Pour vous authentifier auprès de Pub/Sub, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration de Python décrites dans le guide de démarrage rapide de Pub/Sub à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub Python.
Pour vous authentifier auprès de Pub/Sub, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Ruby
Avant d'essayer cet exemple, suivez les instructions de configuration de Ruby décrites dans le guide de démarrage rapide de Pub/Sub à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub Ruby.
Pour vous authentifier auprès de Pub/Sub, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Lorsque Pub/Sub transfère un message impossible à distribuer à un file d'attente de lettres mortes, il ajoute les attributs suivants au message:
CloudPubSubDeadLetterSourceDeliveryCount
: nombre de tentatives d'envoi à l'abonnement source.CloudPubSubDeadLetterSourceSubscription
: nom de l'abonnement source.CloudPubSubDeadLetterSourceSubscriptionProject
: nom du projet qui contient l'abonnement source.CloudPubSubDeadLetterSourceTopicPublishTime
: code temporel de la publication initiale du messageCloudPubSubDeadLetterSourceDeliveryErrorMessage
: raison pour laquelle le message n'a pas pu être distribué à sa destination d'origine. L'attribut n'existe que pour les abonnements liés à l'exportation.
Surveiller les messages transférés
Après avoir transféré un message non distribuable, le service Pub/Sub supprime le message de l'abonnement. Vous pouvez surveiller les messages transférés avec Cloud Monitoring.
Si vous associez un abonnement au sujet de lettres mortes, les messages utilisent la règle d'expiration de l'abonnement associé plutôt que la période d'expiration de l'abonnement avec la propriété de sujet de lettres mortes.
La métrique subscription/dead_letter_message_count
enregistre le nombre de messages non distribuables que Pub/Sub transfère depuis un abonnement.
Pour en savoir plus, consultez la section Surveiller les messages non distribuables transférés.
Supprimer un file d'attente de lettres mortes
Pour arrêter le transfert de messages non distribuables, supprimez le sujet de lettres mortes de l'abonnement.
Vous pouvez supprimer un file d'attente de lettres mortes d'un abonnement à l'aide de la console Google Cloud, de Google Cloud CLI ou de l'API Pub/Sub.
Console
Pour supprimer un sujet de lettres mortes d'un abonnement, procédez comme suit :
Dans la console Google Cloud, accédez à la page Abonnements.
Dans la liste des abonnements, cliquez sur more_vert à côté de l'abonnement à mettre à jour.
Dans le menu contextuel, sélectionnez Modifier.
Dans la section Sujet de lettres mortes, désélectionnez Activer la gestion des lettres mortes.
Cliquez sur Mettre à jour.
gcloud
Pour supprimer un sujet de lettres mortes d'un abonnement, exécutez la commande gcloud pubsub subscriptions update
et l'option --clear-dead-letter-policy
:
gcloud pubsub subscriptions update subscription-id \ --clear-dead-letter-policy
C++
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage C++ qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour C++.
C#
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage C# qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour C#.
Go
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Go qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Go.
Java
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Java qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Java.
Node.js
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Node.js qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Node.js.
PHP
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage PHP qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour PHP.
Python
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Python qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Python.
Ruby
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Ruby qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Ruby.
Ruby
Avant d'essayer cet exemple, suivez les instructions de configuration de Ruby décrites dans le guide de démarrage rapide de Pub/Sub à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub Ruby.
Pour vous authentifier auprès de Pub/Sub, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Tarification
Lorsque le service Pub/Sub transfère les messages non distribuables, les frais suivants s'appliquent :
- Frais de publication facturés sur le compte de facturation associé au projet contenant le sujet de lettres mortes.
- Frais d'abonnement pour les messages sortants, facturés sur le compte de facturation associé au projet contenant l'abonnement avec la propriété de file d'attente de lettres mortes
Si vous définissez la propriété du file d'attente de lettres mortes d'un abonnement, mais que la règle d'emplacement de stockage des messages associée à ce sujet n'autorise pas la région contenant l'abonnement, des frais de publication pour les messages sortants s'appliquent également.
Les frais de publication des messages sortants sont facturés au projet contenant le file d'attente de lettres mortes. Pour en savoir plus, reportez-vous à la page Tarifs.
Étapes suivantes
- Obtenir les messages non distribuables transférés.
- Surveiller les applications Pub/Sub.
- Découvrir les concepts de distribution des messages