Os subscritores podem não conseguir processar mensagens por vários motivos. Por exemplo, podem existir problemas transitórios na obtenção dos dados necessários para processar uma mensagem. Em alternativa, uma mensagem pode estar num formato que o subscritor não espera.
Esta página explica como processar essas falhas de processamento através de uma política de repetição de subscrição ou encaminhando mensagens não entregues para um tópico de mensagens rejeitadas (também conhecido como fila de mensagens rejeitadas).
Tenha em atenção que estas funcionalidades não são suportadas pelo Dataflow. Consulte a secção Funcionalidades do Pub/Sub não suportadas da documentação do Dataflow para mais informações.
Política de novas tentativas de subscrição
Se o Pub/Sub tentar entregar uma mensagem, mas o subscritor não a conseguir confirmar, o Pub/Sub tenta reenviar automaticamente a mensagem. Esta tentativa de reenvio é conhecida como a política de repetição da subscrição. Esta não é uma funcionalidade que pode ativar ou desativar. No entanto, pode escolher o tipo de política de repetição que quer usar.
Quando cria e configura a sua subscrição pela primeira vez, pode optar por usar uma das seguintes políticas de repetição: reenvio imediato ou recuo exponencial. Por predefinição, as subscrições usam a reentrega imediata.
Reentrega imediata
Por predefinição, o Pub/Sub tenta reenviar a mensagem imediatamente (e, potencialmente, ao mesmo cliente subscritor). No entanto, se as condições que impediram a confirmação da mensagem não tiverem sido alteradas, a reentrega imediata pode causar problemas. Neste caso, é possível que o Pub/Sub reenvie várias mensagens que não podem ser confirmadas.
Para resolver problemas de reentrega imediatos, o Pub/Sub permite-lhe configurar uma política de rejeição exponencial.
Retirada exponencial
A retirada exponencial permite-lhe adicionar intervalos de tempo progressivamente mais longos entre as tentativas de repetição. Após a primeira falha de entrega, o Pub/Sub aguarda um tempo de recuo mínimo antes de tentar novamente. Para cada falha de mensagem consecutiva, é adicionado mais tempo ao atraso, até um atraso máximo (0 e 600 segundos).
Os intervalos de atraso máximos e mínimos não são fixos e devem ser configurados com base em fatores locais da sua aplicação.
Tenha em atenção as seguintes considerações acerca da retirada exponencial:
- A retirada exponencial é acionada nas seguintes ações:
- Quando é recebido um reconhecimento negativo.
- Quando o prazo de confirmação de uma mensagem expira.
- A repetição exponencial só é aplicada por mensagem, em vez de a todas as mensagens numa subscrição (global).
- Enquanto usa o recuo exponencial, o Pub/Sub continua a enviar outras mensagens, mesmo que as mensagens anteriores tenham recebido reconhecimentos negativos (a menos que esteja a usar o envio de mensagens ordenado).
Use a política de repetição para atrasar a entrega e o processamento de um subconjunto de mensagens para acomodar uma incapacidade transitória de processar algumas mensagens após a entrega. A funcionalidade é aplicada com base no melhor esforço e cada mensagem é avaliada separadamente para a política de repetição.
Não recomendamos a utilização desta funcionalidade para introduzir atrasos intencionais na entrega de mensagens. Se enviar um reconhecimento negativo (NACK) de um grande número de mensagens numa subscrição configurada com uma política de repetição, é possível que algumas dessas mensagens sejam entregues com menos ou sem recuo. O Pub/Sub também pode abrandar a entrega de todas as mensagens se enviar um NACK a um grande número de mensagens.
Se precisar de agendar entregas, considere usar o Cloud Tasks.
Configure a retirada exponencial
Consola
Quando cria uma nova subscrição, pode configurar uma política de repetição de recuo exponencial através dos seguintes passos:
Na Google Cloud consola, aceda à página Subscrições do Pub/Sub.
Clique em Criar subscrição.
No campo ID da subscrição, introduza um nome.
Para obter informações sobre como atribuir um nome a uma subscrição, consulte as diretrizes para atribuir um nome a um tópico ou a uma subscrição.
Escolha ou crie um tópico no menu pendente.
A subscrição recebe mensagens do tópico.
Selecione um Tipo de fornecimento.
Em Política de repetição, selecione Repetir após retirada exponencial.
Introduza um Recuo mínimo e um Recuo máximo entre 0 e 600 segundos.
Os valores predefinidos são 10 segundos para o recuo mínimo e 600 segundos para o recuo máximo.
Clique em Criar.
gcloud
Para criar uma nova subscrição com uma política de repetição de recuo exponencial, execute o comando gcloud pubsub create
com as flags apresentadas abaixo:
gcloud pubsub subscriptions create SUBSCRIPTION_ID \ --topic=TOPIC_ID \ --min-retry-delay=MIN_RETRY_DELAY \ --max-retry-delay=MAX_RETRY_DELAY
Tópico de mensagens não entregues
Se o serviço Pub/Sub tentar entregar uma mensagem, mas o subscritor não a conseguir confirmar, o Pub/Sub pode encaminhar a mensagem não entregue para um tópico de mensagens rejeitadas.
Como funcionam os tópicos de mensagens não entregues com o Pub/Sub
Um tópico de mensagens não entregues é uma propriedade de subscrição e não uma propriedade de tópico. Isto significa que define um tópico de mensagens não entregues quando cria uma subscrição e não quando cria um tópico.
Se criar um tópico de mensagens não entregues, pode definir as seguintes propriedades de subscrição:
Número máximo de tentativas de entrega: um valor numérico que indica o número de tentativas de entrega que o Pub/Sub faz para uma mensagem específica. Se o cliente subscritor não conseguir acusar a receção da mensagem dentro do número configurado de tentativas de entrega, a mensagem é encaminhada para um tópico de mensagens não entregues.
- Valor predefinido = 5
- Valor máximo = 100
- Valor mínimo = 5
Projeto com o tópico de mensagens não entregues: se o tópico de mensagens não entregues estiver num projeto diferente da subscrição, tem de especificar o projeto com o tópico de mensagens não entregues. Defina o tópico de mensagens não entregues para um tópico diferente do tópico ao qual a subscrição está associada.
Como são calculadas as tentativas de entrega máximas
O Pub/Sub só contabiliza as tentativas de entrega quando um tópico de mensagens não entregues está configurado corretamente e inclui as autorizações de IAM corretas.
O número máximo de tentativas de entrega é aproximado porque o Pub/Sub encaminha mensagens não entregáveis com base no melhor esforço.
O número monitorizado de tentativas de entrega de uma mensagem também pode ser reposto para zero, especialmente para uma subscrição de obtenção com subscritores inativos. Como resultado, as mensagens podem ser entregues ao cliente subscritor mais vezes do que o número máximo de tentativas de entrega configurado.
Configure um tópico de mensagens não entregues
Para configurar um tópico de mensagens não entregues, o tópico de origem tem de ter primeiro uma subscrição. Pode especificar um tópico de mensagens não entregues quando cria a subscrição ou pode atualizar uma subscrição existente para ter um tópico de mensagens não entregues.
Segue-se o fluxo de trabalho para ativar a carta morta numa subscrição.
Crie o tópico de mensagens não entregues. Este tópico é independente do tópico de origem.
Defina o tópico de mensagens não entregues na subscrição do tópico de origem.
Para evitar perder mensagens do tópico de mensagens rejeitadas, anexe, pelo menos, outra subscrição ao tópico de mensagens rejeitadas. A subscrição secundária recebe mensagens do tópico de mensagens rejeitadas.
Conceda as funções de publicador e subscritor à conta de serviço do Pub/Sub. Para mais informações, consulte o artigo Conceda autorizações de encaminhamento.
Defina um tópico de mensagens não entregues numa nova subscrição
Pode criar uma subscrição e definir um tópico de mensagens não entregues através da Google Cloud consola, da CLI do Google Cloud, das bibliotecas cliente ou da API Pub/Sub.
Consola
Para criar uma subscrição e definir um tópico de mensagens não entregues, conclua os seguintes passos:
Na Google Cloud consola, aceda à página Subscrições.
Clique em Criar subscrição.
Introduza o ID da subscrição.
Escolha ou crie um tópico no menu pendente.
A subscrição recebe mensagens do tópico.
Na secção Devolução por não entrega, selecione Ativar devolução por não entrega.
Escolha ou crie um tópico de mensagens não entregues no menu pendente.
Se o tópico de mensagens rejeitadas escolhido não tiver uma subscrição, o sistema pede-lhe que crie uma.
No campo Máximo de tentativas de entrega, especifique um número inteiro entre 5 e 100.
Clique em Criar.
O painel de detalhes mostra uma lista de possíveis itens de ação. Se algum dos itens mostrar um ícone de erro
, clique no item de ação para resolver o problema.
gcloud
Para criar uma subscrição e definir um tópico de mensagens não entregues, use o comando
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++
Antes de experimentar este exemplo, siga as instruções de configuração do C++ no artigo Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API C++ do Pub/Sub.
C#
Antes de experimentar este exemplo, siga as instruções de configuração do C# em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API C# do Pub/Sub.
Ir
O exemplo seguinte usa a versão principal da biblioteca de cliente Go Pub/Sub (v2). Se ainda estiver a usar a biblioteca v1, consulte o guia de migração para a v2. Para ver uma lista de exemplos de código da v1, consulte os exemplos de código descontinuados.
Antes de experimentar este exemplo, siga as instruções de configuração do Go em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Go do Pub/Sub.
Java
Antes de experimentar este exemplo, siga as instruções de configuração do Java no artigo Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API Java do Pub/Sub.
Node.js
Antes de experimentar este exemplo, siga as instruções de configuração do Node.js em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Node.js do Pub/Sub.
Node.js
Antes de experimentar este exemplo, siga as instruções de configuração do Node.js em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Node.js do Pub/Sub.
PHP
Antes de experimentar este exemplo, siga as instruções de configuração do PHP no artigo Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API PHP Pub/Sub.
Python
Antes de experimentar este exemplo, siga as instruções de configuração do Python em Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API Python Pub/Sub.
Ruby
O exemplo seguinte usa a biblioteca cliente Ruby Pub/Sub v3. Se ainda estiver a usar a biblioteca v2, consulte o guia de migração para a v3. Para ver uma lista de exemplos de código do Ruby v2, consulte os exemplos de código descontinuados.
Antes de experimentar este exemplo, siga as instruções de configuração do Ruby em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Ruby Pub/Sub.
Ruby
Antes de experimentar este exemplo, siga as Rubyinstruções de configuração no início rápido do Pub/Sub com as bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Ruby Pub/Sub.
Para se autenticar no Pub/Sub, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Defina um tópico de mensagens não entregues para uma subscrição existente
Pode atualizar uma subscrição e definir um tópico de mensagens não entregues através da Google Cloud consola, da CLI Google Cloud, das bibliotecas de cliente ou da API Pub/Sub.
Consola
Para atualizar uma subscrição e definir um tópico de mensagens não entregues, conclua os seguintes passos.
Na Google Cloud consola, aceda à página Subscrições.
Junto à subscrição que quer atualizar, clique em Mais açõesmore_vert.
No menu de contexto, selecione Editar.
Na secção Devolução por não entrega, selecione Ativar devolução por não entrega.
Escolha ou crie um tópico no menu pendente.
Se o tópico escolhido não tiver uma subscrição, o sistema pede-lhe para criar uma.
No campo Máximo de tentativas de entrega, especifique um número inteiro entre 5 e 100.
Clique em Atualizar.
O painel de detalhes mostra uma lista de possíveis itens de ação. Se algum dos itens mostrar um ícone de erro
, clique no item de ação para resolver o problema.
gcloud
Para atualizar uma subscrição e definir um tópico de mensagens não entregues, use o comando
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++
Antes de experimentar este exemplo, siga as instruções de configuração do C++ no artigo Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API C++ do Pub/Sub.
C#
Antes de experimentar este exemplo, siga as instruções de configuração do C# em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API C# do Pub/Sub.
Ir
O exemplo seguinte usa a versão principal da biblioteca de cliente Go Pub/Sub (v2). Se ainda estiver a usar a biblioteca v1, consulte o guia de migração para a v2. Para ver uma lista de exemplos de código da v1, consulte os exemplos de código descontinuados.
Antes de experimentar este exemplo, siga as instruções de configuração do Go em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Go do Pub/Sub.
Java
Antes de experimentar este exemplo, siga as instruções de configuração do Java no artigo Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API Java do Pub/Sub.
Node.js
Antes de experimentar este exemplo, siga as instruções de configuração do Node.js em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Node.js do Pub/Sub.
PHP
Antes de experimentar este exemplo, siga as instruções de configuração do PHP no artigo Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API PHP Pub/Sub.
Python
Antes de experimentar este exemplo, siga as instruções de configuração do Python em Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API Python Pub/Sub.
Ruby
O exemplo seguinte usa a biblioteca cliente Ruby Pub/Sub v3. Se ainda estiver a usar a biblioteca v2, consulte o guia de migração para a v3. Para ver uma lista de exemplos de código do Ruby v2, consulte os exemplos de código descontinuados.
Antes de experimentar este exemplo, siga as instruções de configuração do Ruby em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Ruby Pub/Sub.
Ruby
Antes de experimentar este exemplo, siga as Rubyinstruções de configuração no início rápido do Pub/Sub com as bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Ruby Pub/Sub.
Para se autenticar no Pub/Sub, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Conceda funções de IAM para usar tópicos de mensagens não entregues
Para encaminhar mensagens com impossibilidade de entrega para um tópico de mensagens não entregues, o Pub/Sub tem de ter autorização para fazer o seguinte:
- Publicar mensagens no tópico.
- Confirmar as mensagens, o que as remove da subscrição.
O Pub/Sub cria e mantém uma conta de serviço para cada projeto:
service-project-number@gcp-sa-pubsub.iam.gserviceaccount.com
.
Pode conceder autorizações de encaminhamento atribuindo funções de publicador e subscritor a esta conta de serviço.
Consola
Para conceder autorização do Pub/Sub para publicar mensagens num tópico de mensagens rejeitadas, conclua os seguintes passos:
Na Google Cloud consola, aceda à página Subscrições.
Clique no nome da subscrição que tem o tópico de mensagens não entregues.
Clique no separador Correspondência devolvida.
Para atribuir uma função de publicador, clique em Conceder função de publicador. Se a função de publicador for atribuída com êxito, é apresentada uma marca de verificação azul
.Para atribuir uma função de subscritor, clique em Conceder função de subscritor. Se a função de publicador for atribuída com êxito, é apresentada uma marca de verificação azul
.
gcloud
Para conceder autorização ao Pub/Sub para publicar mensagens num tópico de mensagens não entregues, execute o seguinte comando:
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"
Para conceder autorização ao Pub/Sub para acusar a receção de mensagens não entregues encaminhadas, execute o seguinte comando:
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"
Acompanhe as tentativas de entrega
Depois de ativar um tópico de mensagens não entregues para uma subscrição, cada mensagem dessa subscrição tem um campo que especifica o número de tentativas de entrega:
As mensagens recebidas de uma subscrição de obtenção incluem o campo
delivery_attempt
.As mensagens recebidas de uma subscrição push incluem o campo
deliveryAttempt
.
Os exemplos seguintes mostram como obter o número de tentativas de entrega:
C++
Antes de experimentar este exemplo, siga as instruções de configuração do C++ no artigo Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API C++ do Pub/Sub.
C#
Antes de experimentar este exemplo, siga as instruções de configuração do C# em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API C# do Pub/Sub.
Ir
O exemplo seguinte usa a versão principal da biblioteca de cliente Go Pub/Sub (v2). Se ainda estiver a usar a biblioteca v1, consulte o guia de migração para a v2. Para ver uma lista de exemplos de código da v1, consulte os exemplos de código descontinuados.
Antes de experimentar este exemplo, siga as instruções de configuração do Go em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Go do Pub/Sub.
Java
Antes de experimentar este exemplo, siga as instruções de configuração do Java no artigo Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API Java do Pub/Sub.
Node.js
Antes de experimentar este exemplo, siga as instruções de configuração do Node.js em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Node.js do Pub/Sub.
PHP
Antes de experimentar este exemplo, siga as instruções de configuração do PHP no artigo Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API PHP Pub/Sub.
Python
Antes de experimentar este exemplo, siga as instruções de configuração do Python em Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API Python Pub/Sub.
Ruby
O exemplo seguinte usa a biblioteca cliente Ruby Pub/Sub v3. Se ainda estiver a usar a biblioteca v2, consulte o guia de migração para a v3. Para ver uma lista de exemplos de código do Ruby v2, consulte os exemplos de código descontinuados.
Antes de experimentar este exemplo, siga as instruções de configuração do Ruby em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Ruby Pub/Sub.
Quando o Pub/Sub encaminha uma mensagem não entregável para um tópico de mensagens rejeitadas, adiciona os seguintes atributos à mensagem:
CloudPubSubDeadLetterSourceDeliveryCount
: o número de tentativas de entrega à subscrição de origem.CloudPubSubDeadLetterSourceSubscription
: o nome da subscrição de origem.CloudPubSubDeadLetterSourceSubscriptionProject
: o nome do projeto que contém a subscrição de origem.CloudPubSubDeadLetterSourceTopicPublishTime
: a data/hora em que a mensagem foi publicada originalmente.CloudPubSubDeadLetterSourceDeliveryErrorMessage
: o motivo pelo qual não foi possível entregar a mensagem no destino original. O atributo só existe para subscrições de exportação.
Monitorize mensagens encaminhadas
Depois de encaminhar uma mensagem não entregue, o serviço Pub/Sub remove a mensagem da subscrição. Pode monitorizar as mensagens encaminhadas com o Cloud Monitoring.
Se anexar uma subscrição ao tópico de mensagens não entregues, as mensagens usam a política de validade da subscrição anexada em vez do período de validade da subscrição com a propriedade do tópico de mensagens não entregues.
A métrica subscription/dead_letter_message_count
regista o número de mensagens não entregues que o Pub/Sub
encaminha a partir de uma subscrição.
Para mais informações, consulte o artigo Monitorizar mensagens não entregues encaminhadas.
Remova um tópico de mensagens não entregues
Para parar o encaminhamento de mensagens não entregues, remova o tópico de mensagens não entregues da subscrição.
Pode remover um tópico de mensagens não entregues de uma subscrição através da Google Cloud consola, da Google Cloud CLI ou da API Pub/Sub.
Consola
Para remover um tópico de mensagens não entregues de uma subscrição, conclua os seguintes passos:
Na Google Cloud consola, aceda à página Subscrições.
Na lista de subscrições, clique em more_vert junto à subscrição que quer atualizar.
No menu de contexto, selecione Editar.
Na secção Letras mortas, desmarque a opção Ativar letras mortas.
Clique em Atualizar.
gcloud
Para remover um tópico de mensagens não entregues de uma subscrição, use o comando
gcloud pubsub subscriptions update
e a flag --clear-dead-letter-policy
:
gcloud pubsub subscriptions update subscription-id \ --clear-dead-letter-policy
C++
Antes de experimentar este exemplo, siga as instruções de configuração do C++ no artigo Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API C++ do Pub/Sub.
C#
Antes de experimentar este exemplo, siga as instruções de configuração do C# em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API C# do Pub/Sub.
Ir
O exemplo seguinte usa a versão principal da biblioteca de cliente Go Pub/Sub (v2). Se ainda estiver a usar a biblioteca v1, consulte o guia de migração para a v2. Para ver uma lista de exemplos de código da v1, consulte os exemplos de código descontinuados.
Antes de experimentar este exemplo, siga as instruções de configuração do Go em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Go do Pub/Sub.
Java
Antes de experimentar este exemplo, siga as instruções de configuração do Java no artigo Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API Java do Pub/Sub.
Node.js
Antes de experimentar este exemplo, siga as instruções de configuração do Node.js em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Node.js do Pub/Sub.
PHP
Antes de experimentar este exemplo, siga as instruções de configuração do PHP no artigo Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API PHP Pub/Sub.
Python
Antes de experimentar este exemplo, siga as instruções de configuração do Python em Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API Python Pub/Sub.
Ruby
O exemplo seguinte usa a biblioteca cliente Ruby Pub/Sub v3. Se ainda estiver a usar a biblioteca v2, consulte o guia de migração para a v3. Para ver uma lista de exemplos de código do Ruby v2, consulte os exemplos de código descontinuados.
Antes de experimentar este exemplo, siga as instruções de configuração do Ruby em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Ruby Pub/Sub.
Ruby
Antes de experimentar este exemplo, siga as Rubyinstruções de configuração no início rápido do Pub/Sub com as bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Ruby Pub/Sub.
Para se autenticar no Pub/Sub, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Preços
Quando o serviço Pub/Sub encaminha mensagens não entregues, aplicam-se as seguintes taxas:
- Taxas de publicação faturadas à conta de faturação associada ao projeto que contém o tópico de mensagens não entregues.
- Taxas de subscrição de mensagens de saída faturadas à conta de faturação associada ao projeto que contém a subscrição com a propriedade tópico de mensagens não entregues.
Se definir a propriedade do tópico de mensagens não entregues de uma subscrição, mas a política de localização de armazenamento de mensagens do tópico de mensagens não entregues não permitir a região que contém a subscrição, também se aplicam taxas de publicação para mensagens de saída.
As taxas de publicação de mensagens de saída são faturadas ao projeto que contém o tópico de mensagens não entregues. Para mais informações, consulte a secção Preços.
O que se segue?
- Receba as mensagens não entregues encaminhadas.
- Monitorize aplicações Pub/Sub.
- Saiba mais sobre os conceitos de entrega de mensagens.