Checkpoints
Create a Pub/Sub topic
/ 5
Create Pub/Sub Subscription
/ 5
Google Cloud Pub/Sub: Qwik Start - Linha de comando
GSP095
Visão geral
O Google Cloud Pub/Sub é um serviço de mensagens para trocar dados de eventos entre aplicativos e serviços. Com a separação de remetentes e destinatários, ele permite uma comunicação segura e altamente disponível entre aplicativos criados de modo independente. O Google Cloud Pub/Sub envia mensagens duráveis de baixa latência e é geralmente usado por desenvolvedores para a implantação de fluxos de trabalho assíncronos, distribuição de notificações de eventos e streaming de dados a partir de vários processos ou dispositivos.
O que você vai aprender
Neste laboratório, você vai:
-
os conceitos básicos do Pub/Sub;
-
a criar, excluir e listar tópicos do Pub/Sub;
-
a criar, excluir e listar assinaturas do Pub/Sub;
-
a publicar mensagens em um tópico;
-
a usar um assinante de pull para gerar mensagens individuais do tópico;
-
a usar um assinante de pull com uma flag para gerar várias mensagens.
Pré-requisitos
Este é um laboratório de nível introdutório. Ele é indicado para pessoas com pouca ou nenhuma experiência com o Pub/Sub. Neste laboratório, você aprenderá os requisitos básicos sobre como configurar e usar esse serviço do Google Cloud.
Antes de realizar este laboratório, verifique seu nível de conhecimento do Pub/Sub. Veja na lista a seguir alguns laboratórios mais complexos que você pode fazer para aplicar seu conhecimento do Pub/Sub a diferentes serviços de nuvem e casos de uso.
- Dataflow: Qwik Start – Modelos
- Como criar um pipeline de análise de IoT com o Google Cloud Platform
- Como verificar conteúdo gerado pelo usuário com as APIs Cloud Video Intelligence e Cloud Vision Se você quer começar a usar o Pub/Sub no console do Cloud, veja este laboratório:
- Google Cloud Pub/Sub: Qwik Start — Console
Quando tudo estiver pronto, role a tela para baixo e execute as etapas a seguir para configurar seu ambiente de laboratório.
Configuração e requisitos
Antes de clicar no botão Start Lab
Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é iniciado quando você clica em Começar o laboratório e mostra por quanto tempo os recursos do Google Cloud ficarão disponíveis.
Este laboratório prático do Qwiklabs permite que você realize as atividades em um ambiente real de nuvem, não em uma simulação ou demonstração. Você receberá novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.
O que é necessário
Para fazer este laboratório, você precisa ter:
- acesso a um navegador de Internet padrão (recomendamos o Chrome);
- tempo para concluir as atividades.
Observação: não use seu projeto ou sua conta do Google Cloud neste laboratório.
Observação: se estiver usando um dispositivo Chrome OS, abra uma janela anônima para executar o laboratório.
Agora que você começou seu laboratório, faça login no console do Google Cloud Shell e, em seguida, inicie a ferramenta de linha de comando.
Como iniciar seu laboratório e fazer login no console do Google Cloud
-
Clique no botão Começar o laboratório. Se for preciso pagar, você verá um pop-up para selecionar a forma de pagamento. No painel Detalhes do laboratório à esquerda, você verá o seguinte:
- O botão Abrir Console do Cloud
- Tempo restante
- As credenciais temporárias que você vai usar neste laboratório
- Outras informações se forem necessárias
-
Clique em Abrir Console do Google. O laboratório ativa recursos e depois abre outra guia com a página Fazer login.
Dica: coloque as guias em janelas separadas lado a lado.
Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta. -
Caso seja preciso, copie o Nome de usuário no painel Detalhes do laboratório e cole esse nome na caixa de diálogo Fazer login. Clique em Avançar.
-
Copie a Senha no painel Detalhes do laboratório e a cole na caixa de diálogo Olá. Clique em Avançar.
Importante: você precisa usar as credenciais do painel à esquerda. Não use suas credenciais do Google Cloud Ensina. Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais. -
Acesse as próximas páginas:
- Aceite os Termos e Condições.
- Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
- Não se inscreva em testes gratuitos.
Depois de alguns instantes, o console do GCP vai ser aberto nesta guia.
Ative o Google Cloud Shell
O Google Cloud Shell é uma máquina virtual com ferramentas de desenvolvimento. Ele conta com um diretório principal permanente de 5 GB e é executado no Google Cloud. O Google Cloud Shell permite acesso de linha de comando aos seus recursos do GCP.
-
No Console do GCP, na barra de ferramentas superior direita, clique no botão Abrir o Cloud Shell.
-
Clique em Continue (continuar):
Demora alguns minutos para provisionar e conectar-se ao ambiente. Quando você está conectado, você já está autenticado e o projeto é definido como seu PROJECT_ID . Por exemplo:
gcloud é a ferramenta de linha de comando do Google Cloud Platform. Ele vem pré-instalado no Cloud Shell e aceita preenchimento com tabulação.
É possível listar o nome da conta ativa com este comando:
gcloud auth list
Saída:
ACTIVE: *
ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net
To set the active account, run:
$ gcloud config set account `ACCOUNT`
É possível listar o ID de projeto com este comando:
gcloud config list project
Saída:
[core]
project = <project_ID>
Exemplo de saída:
[core]
project = qwiklabs-gcp-44776a13dea667a6
Noções básicas do Pub/Sub
Conforme já descrito, o Cloud Pub/Sub é um serviço de mensagens global assíncrono. Três termos são recorrentes no Pub/Sub: tópicos
, publicação
e assinatura
.
-
Um
tópico
é uma string compartilhada que permite que os aplicativos se conectem uns aos outros em um thread comum. -
Os editores enviam (ou
publicam
) mensagens em um tópico Cloud Pub/Sub. -
Os assinantes fazem uma "
subscription
" em um tópico em que irão receber mensagens da assinatura ou configurar webhooks para enviar inscrições. Os assinantes precisam confirmar cada mensagem em um período configurável.
Em resumo, um produtor publica mensagens em um tópico, e um cliente assina um tópico para receber as mensagens publicadas nele.
Tarefa 1: Tópicos do Pub/Sub
O Pub/Sub vem pré-instalado no Google Cloud Shell. Não é necessário fazer qualquer configuração ou instalação para começar a usar o serviço.
-
Execute o seguinte comando para criar um tópico chamado
myTopic
:
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se você concluiu a tarefa, receberá uma pontuação de avaliação.
-
Para uma boa avaliação, crie mais dois tópicos: um chamado
Test1
, e outro chamadoTest2
:
-
Para ver os três tópicos que você criou, execute o seguinte comando:
A saída será parecida com esta:
-
Hora de fazer a limpeza. Execute os comandos a seguir para excluir
Test1
eTest2
:
-
Execute o comando
gcloud pubsub topics list
mais uma vez para verificar se os tópicos foram excluídos:
A seguinte saída será exibida:
Tarefa 2: Assinaturas do Pub/Sub
Agora que você já sabe como criar, visualizar e excluir tópicos, vamos falar das assinaturas.
-
Execute o seguinte comando para criar uma assinatura chamada
mySubscription
ao tópicomyTopic
:
Teste a tarefa concluída
Clique em Verificar meu progresso para conferir a tarefa realizada. Se você concluiu a tarefa, receberá uma pontuação de avaliação.
-
Adicione mais duas assinaturas a
myTopic
. Execute os seguintes comandos para fazer as assinaturasTest1
eTest2
:
-
Execute o comando a seguir para listar as assinaturas ao myTopic:
A saída será parecida com esta:
Teste seu conhecimento
Responda às perguntas de múltipla escolha abaixo para reforçar sua compreensão dos conceitos abordados neste laboratório. Use tudo o que você aprendeu até aqui.
-
Exclua as assinaturas
Test1
eTest2
. Execute os comandos a seguir:
-
Confira se as assinaturas
Test1
eTest2
foram excluídas. Execute o comandolist-subscriptions
mais uma vez:
A seguinte saída será exibida:
Tarefa 3: Como publicar e receber uma mensagem no Pub/Sub
Em seguida, você verá como publicar uma mensagem em um tópico do Pub/Sub.
-
Execute o comando a seguir para publicar a mensagem
"hello"
em um tópico que você criou (myTopic
):
-
Publique mais algumas mensagens em
myTopic
. Execute os comandos a seguir substituindo<YOUR NAME>
pelo seu nome e<FOOD>
por alguma comida de que você gosta:
Em seguida, use o comando pull
para receber as mensagens do seu tópico. Esse comando é baseado em assinatura. Isso significa que ele deve funcionar normalmente, já que você configurou a assinatura mySubscription
ao tópico myTopic
.
-
Use o seguinte comando para receber as mensagens que você acabou de publicar no tópico do Pub/Sub:
A saída será parecida com esta:
O que está acontecendo aqui? Você publicou quatro mensagens no seu tópico, mas apenas uma foi enviada.
Agora é um momento importante para entender alguns recursos do comando pull
que confundem os desenvolvedores:
-
Usar o comando "pull" sem nenhuma flag gerará apenas uma mensagem, mesmo que você assine um tópico que tenha mais informações.
-
Após o envio de uma mensagem individual a partir de um comando "pull" com base em assinatura, você não poderá acessar essa mensagem novamente com o comando "pull".
-
Para ver o problema mencionado no segundo marcador na prática, execute o último comando por mais três vezes. Você verá que ele gerará as outras mensagens que você publicou antes.
-
Agora, execute o comando pela 4ª vez. Você verá a seguinte saída (já que não havia mais nenhuma a ser retornada):
Na seção final, você verá como receber várias mensagens de um tópico com uma flag
.
Tarefa 4: Como receber todas as mensagens de assinaturas no Pub/Sub
Como você recebeu todas as mensagens do seu tópico no último exemplo, publique mais algumas mensagens em myTopic
.
-
Execute os comandos a seguir:
- Adicione uma
flag
ao comando para enviar todas as mensagens em uma solicitação.
Pode ser que você não tenha percebido, mas está usando uma flag o tempo todo. A parte --auto-ack
do comando pull
é uma flag que formata as mensagens nas caixas organizadas em que é possível ver as mensagens recebidas.
A limit
é outra flag que define um limite máximo para o número de mensagens a receber.
-
Espere um minuto para que os tópicos sejam criados. Execute o comando "pull" com a flag
limit
:
A saída deve corresponder ao seguinte:
Agora você sabe como adicionar flags a um comando do Pub/Sub para enviar um grupo maior de mensagens. Você está no caminho certo para se tornar um especialista no Pub/Sub.
Parabéns!
Neste laboratório, você viu os conceitos básicos de tópicos, assinaturas, o comando "pull" e as flags do Pub/Sub.
Termine a Quest
Este laboratório autoguiado faz parte da Quest Baseline: Infrastructure. Uma Quest é uma série de laboratórios relacionados que formam um programa de aprendizado. Ao concluir uma Quest, você ganha um selo como reconhecimento da sua conquista. É possível publicar os selos e incluir um link para eles no seu currículo on-line ou nas redes sociais. Inscreva-se nesta Quest e receba crédito de conclusão imediatamente. Consulte o catálogo do Google Cloud Ensina para ver todas as Quests disponíveis.
Comece o próximo laboratório
Este laboratório faz parte de uma série chamada Qwik Starts. Ela foi desenvolvida para apresentar a você alguns dos recursos disponíveis no Google Cloud. Pesquise "Qwik Starts" no catálogo de laboratórios para encontrar algum que seja do seu interesse.
Próximas etapas/Saiba mais
Aprenda algo totalmente diferente com o laboratório Proxy de serviços da Web do Google Maps em aplicativos para dispositivos móveis.
Treinamento e certificação do Google Cloud
...ajuda você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações ajudam você a validar e comprovar suas habilidades e conhecimentos das tecnologias do Google Cloud.
Manual atualizado em 8 de agosto de 2022
Laboratório testado em 9 de setembro de 2019
Copyright 2020 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.