Como escolher o Pub/Sub ou o Pub/Sub Lite

Esta página destina-se a ajudar você a escolher entre o Pub/Sub e o Pub/Sub Lite.

O Pub/Sub e o Pub/Sub Lite são serviços de mensagens gerenciadas e escalonáveis. O Pub/Sub precisa ser a solução padrão para a maioria dos casos de uso de integração e análise de aplicativos. O Pub/Sub Lite é recomendado somente para aplicativos onde atingir um custo extremamente baixo justifica algum trabalho operacional adicional.

O Pub/Sub oferece uma variedade mais ampla de recursos, paralelismo por mensagem, roteamento global e escalonamento automático de capacidade de recursos.

O Pub/Sub Lite pode ser tão longo quanto uma ordem de magnitude mais barata, mas oferece menor disponibilidade e durabilidade. Além disso, o Pub/Sub Lite exige que você reserve e gerencie manualmente a capacidade do recurso.

Por exemplo, a diferença de custo para um sistema com uma única assinatura (cada mensagem deve ser lida uma vez) pode ser 85% mais barata. Para isso, se você publicou e recebeu 1 MiB/s (60 MiB/min ou 2, 5 TiB/mês) de dados e mensagens armazenadas por 24 horas (84 GiB/mês de capacidade de armazenamento), O custo do Pub/Sub Lite seria de US $30/mês em comparação com US $200/mês com o Pub/Sub.

Para ver detalhes sobre as diferenças de custo entre o Pub/Sub e o Pub/Sub Lite, consulte os preços do Pub/Sub Lite.

Tabela de comparação

Recurso Pub/Sub Pub/Sub Lite
Replicação de mensagens Várias zonas em uma única região Única zona
Capacidade Aprovisionado automaticamente Provisionar antes de usar
Preço Pague pela capacidade que você usa Pague pela capacidade que você provisiona
Storage Ilimitado 30 GiB-10 TiB por tópico do Lite
Tempo de retenção Até sete dias Ilimitado
Endpoints de Serviço Global e regional Discos
Namespace de recursos Global Zona
Roteamento de mensagens Global Zona

Roteamento de mensagens

O Pub/Sub encaminha mensagens globalmente. Aplicativos hospedados em qualquer região podem publicar mensagens em um único tópico. São processados na região mais próxima permitida pelas políticas da organização e encaminhados para os assinantes independentemente da origem.

O Pub/Sub Lite direciona mensagens por zona. Os assinantes precisam se conectar à instância do serviço na região em que o tópico está localizado. Por isso, os editores e assinantes precisam manter a conectividade de rede com a mesma região para se comunicar. Os editores podem publicar dados em qualquer tópico, de qualquer lugar, mas isso pode exigir uma conexão com uma região remota, adicionando latência de rede. Os assinantes que precisam de dados agregados publicados em tópicos em locais diferentes precisam se conectar a todas as instâncias de serviços locais relevantes para ler as mensagens.

Namespace de recursos

Os tópicos e as assinaturas do Pub/Sub são recursos globais. O serviço Pub/Sub pode armazenar mensagens em qualquer região permitida por uma política de armazenamento de tópicos. Além disso, um tópico e uma assinatura para esse tópico podem ser armazenados em diferentes projetos, permitindo faturamento e controle de acesso refinados. Por fim, os assinantes recebem os mesmos dados, independentemente do endpoint de serviço usado para se conectar ao Pub/Sub ou qual endpoint de serviço foi usado pelo editor dos dados.

Os tópicos e as assinaturas do Pub/Sub Lite são recursos zonais que precisam estar no mesmo projeto e zona do Cloud. Se você executar um editor ou assinante no Google Cloud, o aplicativo poderá ser executado em um projeto do Cloud diferente do projeto do Cloud em que o tópico do Lite e a assinatura do Lite estão. Para ver uma lista de zonas compatíveis com o Pub/Sub Lite, consulte Locais do Pub/Sub Lite.

Gerenciamento de capacidade

O Pub/Sub é escalonado automaticamente. A capacidade da publicação de mensagens é provisionada automaticamente, portanto, você pode enviar e receber mensagens a qualquer taxa, até as cotas configuradas para seu projeto.

O armazenamento do Pub/Sub Lite é provisionado manualmente. É necessário provisionar manualmente a capacidade de publicar mensagens em tópicos do Lite, receber mensagens de tópicos do Lite e armazenar mensagens em tópicos do Lite. Ao criar um tópico do Lite, você especifica o número de partições e o armazenamento por partição. É possível escalonar a capacidade das partições para aumentar a capacidade de um tópico do Lite.

Modos de entrega

O Pub/Sub é compatível com vários modos de entrega de mensagens. Isso inclui Pull (pesquisa tradicional), Push (HTTPS POST), StreamingPull (RPC bidirecional para latência mais baixa e mais eficiência) e receba o REST e o gRPC HTTP.

O Pub/Sub Lite é compatível apenas com o envio de mensagens pull de gRPC gRPC. Para solicitar mensagens, os assinantes estabelecem conexões de streaming bidirecional com cada partição.

Paralelismo

O Pub/Sub usa paralelismo por mensagem. Isso permite o processamento simultâneo de qualquer quantidade de mensagens, de um ou milhares de clientes para uma única assinatura.

O Pub/Sub Lite usa o paralelismo baseado em partição. Isso força um cliente a processar cada partição de dados em ordem linear em uma única instância do cliente. Isso limita o número máximo de instâncias de clientes para no máximo o número de partições.

Pipelines de streaming

O Pub/Sub e o Pub/Sub Lite são integrados ao Dataflow para processamento de stream sem servidor e integração de dados. O Pub/Sub permite que o Dataflow seja escalonado de maneira mais flexível e é compatível com o SQL do Dataflow.

Para começar a usar o Dataflow e o Pub/Sub ou o Pub/Sub Lite, veja estes tutoriais: