O que é o Pub/Sub?

O Pub/Sub é um serviço de mensagens assíncrono e escalonável que separa os serviços que produzem mensagens dos serviços que processam essas mensagens.

O Pub/Sub permite que os serviços se comuniquem de forma assíncrona, com latências normalmente na ordem de 100 milissegundos.

O Pub/Sub é usado para análise de streaming e pipelines de integração de dados para carregar e distribuir dados. Ele é igualmente eficaz como um middleware orientado a mensagens para integração de serviços ou como uma fila para carregar tarefas em paralelo.

O Pub/Sub permite criar sistemas de produtores e consumidores de eventos, chamados de publicadores e assinantes. Os editores se comunicam com os assinantes de forma assíncrona transmitindo eventos, em vez de realizar chamadas de procedimento remoto (RPCs) síncronas.

Os publicadores enviam eventos ao serviço Pub/Sub sem considerar como ou quando eles vão ser processados. Depois o Pub/Sub entrega eventos para todos os serviços que precisam responder a eles. Nos sistemas que se comunicam por RPCs, os publicadores precisam esperar que os assinantes recebam os dados. No entanto, a integração assíncrona no Pub/Sub aumenta a flexibilidade e a robustez do sistema como um todo.

Para começar a usar o Pub/Sub, confira o Guia de início rápido sobre como usar o console Cloud de Confiance . Para uma introdução mais abrangente, consulte Como criar um sistema de mensagens do Pub/Sub.

Casos de uso comuns

  • Ingestão de eventos do servidor e interação do usuário. Para usar eventos de interação do usuário de apps de usuários finais ou eventos de servidor do seu sistema, encaminhe-os para o Pub/Sub. Em seguida, use uma ferramenta de processamento de stream para entregar os eventos aos bancos de dados. O Pub/Sub permite coletar eventos de vários clientes simultaneamente.
  • Distribuição de eventos em tempo real. Os eventos, brutos ou processados, podem ser disponibilizados para vários aplicativos em toda a equipe e organização para processamento em tempo real. O Pub/Sub é compatível com um "barramento de eventos corporativo" e padrões de design de aplicativos orientados a eventos. O Pub/Sub permite a integração com muitos sistemas que exportam eventos para o Pub/Sub.
  • Replicação de dados entre bancos de dados. O Pub/Sub é usado com frequência para distribuir eventos de alteração de bancos de dados. Esses eventos podem ser usados para criar uma visualização do estado do banco de dados e do histórico de estados.
  • Processamento e fluxos de trabalho paralelos. É possível distribuir com eficiência muitas tarefas entre vários workers usando mensagens do Pub/Sub para se comunicar com eles. Exemplos dessas tarefas são compactar arquivos de texto, enviar notificações por e-mail, avaliar modelos de IA e reformatar imagens.
  • Barramento de eventos empresariais. É possível criar um barramento de compartilhamento de dados em tempo real para toda a empresa, distribuindo eventos de negócios, atualizações de banco de dados e eventos de análise em toda a organização.
  • Streaming de dados de aplicativos e serviços. Por exemplo, um aplicativo SaaS pode publicar um feed de eventos em tempo real. Ou um sensor residencial pode transmitir dados para o Pub/Sub para uso em outros produtos do Cloud de Confiance by S3NS por meio de um pipeline de tratamento de dados.
  • Atualizar caches distribuídos. Um aplicativo pode publicar eventos de invalidação para atualizar os IDs de objetos que foram alterados.
  • Balanceamento de carga para aumentar a confiabilidade. Por exemplo, as instâncias de um serviço podem ser implantadas no Compute Engine em várias zonas, mas assinar um tópico comum. Quando o serviço falha em qualquer zona, as outras podem assumir a carga automaticamente.

Próximas etapas