Migrar do Pub/Sub Lite para o Pub/Sub

Neste documento, você encontra informações sobre como migrar seu Pub/Sub Lite aplicativos e dados do Pub/Sub Lite para o Pub/Sub.

Para migrar para o Pub/Sub, use a exportação do Pub/Sub Lite recurso de assinatura. A assinatura de exportação converte mensagens de um Pub/Sub Lite em uma mensagem do Pub/Sub usando um tipo de assinatura chamado assinatura de exportação.

Diferenças entre o Pub/Sub Lite e o Pub/Sub

O Pub/Sub e o Pub/Sub Lite são escalonáveis horizontalmente mas cada um tem diferenças importantes no funcionamento. Para entender essas diferenças em detalhes, leia Escolher Pub/Sub ou Pub/Sub Lite (em inglês)

As seções a seguir descrevem algumas das principais diferenças entre cada serviço relevantes ao migrar entre serviços. São elas: considerações:

  • Localidade e replicação dos dados
  • Modos de entrega
  • Paralelismo e ordenação
  • Repetir e limpar
  • Gerenciamento de capacidade e preços

Localidade e replicação dos dados

  • Pub/Sub Lite: Replicação de tópicos regionais do Pub/Sub Lite para uma zona secundária na mesma região. Pub/Sub Lite zonal os tópicos armazenam dados em uma única zona sem replicação.

  • Pub/Sub. O Pub/Sub replica dados em três zonas em uma região.

Ponto principal de migração

É importante entender como cada serviço replica os dados de maneira diferente.

Ao usar o Pub/Sub, é possível garantir que seus dados sejam armazenados usando o armazenamento de mensagens do Pub/Sub ..

  • O Pub/Sub não fornece controle sobre as zonas específicas em que e as mensagens são armazenadas. Ela sempre replica os dados em três zonas em uma região, conforme determinado pela política de armazenamento de mensagens.

  • Se você não especificar uma política de armazenamento de mensagens, o Pub/Sub automaticamente determina onde as mensagens são armazenadas com base no seu Local do recurso. Organização da restrição política. Se se você não definir explicitamente uma política da organização, o Pub/Sub permitirá que todos regiões e seleciona automaticamente uma para armazenar mensagens.

Modos de entrega

Ponto principal de migração

Se você quiser replicar o comportamento do Pub/Sub Lite no Pub/Sub (por baixa latência e alta eficiência), implemente seus clientes consumidores usando a API StreamingPull. Outra opção é implementar o Pub/Sub assinatura usando outros modos de transferência disponíveis, como Push entrega.

Paralelismo e ordenação

  • Pub/Sub Lite: O Pub/Sub Lite aceita paralelismo por partição.

  • Pub/Sub. O Pub/Sub é compatível com paralelismo por mensagem.

Ponto principal de migração

O Pub/Sub não é uma solução baseada em partições. As mensagens do Pub/Sub também podem ser são processados simultaneamente, ou seja, a ordem das mensagens não é garantida. Se seu aplicativo exige a ordenação de mensagens, use a ordenação do Pub/Sub chaves.

Ao usar a assinatura de exportação no Pub/Sub Lite, a A chave do Pub/Sub Lite é usada como a chave de ordem no Pub/Sub Mensagem. Isso garante que as mensagens continuem sendo entregues em ordem.

Para garantir a compatibilidade com mensagens do Pub/Sub, verifique se o As chaves do Pub/Sub Lite contêm apenas caracteres codificados em UTF-8.

  • As chaves do Pub/Sub Lite são armazenadas como bytes.
  • As chaves de ordem do Pub/Sub são armazenadas como strings.

As chaves de ordem do Pub/Sub têm uma capacidade de processamento máxima do editor de 1 MBps. A ordem das mensagens no Pub/Sub só é garantida dentro de uma única região. Para receber mensagens ordenadas no Pub/Sub, é preciso ativar explicitamente a ordenação de mensagens nas configurações de assinatura.

Repetir e limpar

  • Pub/Sub Lite: O Pub/Sub Lite oferece suporte à busca sem precisar de outras configurações.

  • Pub/Sub. O Pub/Sub oferece suporte ao recurso de busca, mas requer configuração adicional.

Ponto principal de migração

Para ativar o recurso de busca, o Pub/Sub exige a configuração explícita no tópico e na assinatura.

  • Tópico: você precisa configurar a duração da retenção de mensagens
  • Assinatura: você precisa configurar uma retenção de mensagens confirmadas.

A definição dessas configurações é crucial se você precisar de paridade exata com Pub/Sub Lite ou se a migração exigir a repetição ou limpeza da mensagem. Independentemente dos seus requisitos específicos, a capacidade de buscar e reprocessar é uma proteção valiosa durante uma migração em fases. Com ele, é possível reverter e minimiza a perda de dados em caso de problemas inesperados.

Gerenciamento de capacidade e preços

  • Pub/Sub Lite: A capacidade do Pub/Sub Lite é manual provisionado ao configurar o armazenamento e a capacidade de processamento usando o Pub/Sub Lite reservas.

  • Pub/Sub. O Pub/Sub é totalmente gerenciado e escalona automaticamente.

Ponto principal de migração

Ao fazer a transição para o Pub/Sub, é possível gerenciar a capacidade e os preços definir substituições de cota ou solicitar uma alteração de cota para seu Pub/Sub do Google Cloud.

O principal motivo para gerenciar a capacidade do Pub/Sub é seguir diretrizes requisitos de custo. Se você não tiver limites de custo estritos, o Pub/Sub pode gerenciar recursos com eficiência e sem muita intervenção. O Pub/Sub é são cobrados com base no uso. Para informações detalhadas, consulte Pub/Sub pricing.

Planejar uma migração

Para migrar do Pub/Sub Lite para o Pub/Sub, use a Recurso de assinatura de exportação do Pub/Sub Lite. A exportação de assinaturas permite migrar seu aplicativo Pub/Sub Lite em fases. Adotar uma abordagem em fases permite você atualiza, testa e monitora a migração de forma iterativa, minimizando o risco de erros e inatividade.

Antes de começar

  • Avalie seu aplicativo Pub/Sub Lite atual e mapeie o os atributos correspondentes do Pub/Sub que você precisa.
  • Verifique se o Pub/Sub atende a todos os seus requisitos e cumprimento de requisitos regulatórios.

Fluxo de trabalho da migração em fases

As etapas a seguir apresentam uma visão geral do fluxo de trabalho da migração de assinaturas por exportação.

  1. Criar os tópicos relevantes do Pub/Sub e uma assinatura ao tópico.
  2. Crie uma assinatura de exportação do Pub/Sub Lite.
  3. Assinar o Pub/Sub e o Pub/Sub Lite assinaturas.
  4. Atualizar gradualmente os editores para enviar mensagens a o tópico do Pub/Sub em vez do tópico do Pub/Sub Lite.
  5. Verifique se a carga de trabalho migrada está funcionando conforme o esperado.
  6. Desative os editores e assinantes do Pub/Sub Lite.

Fases da migração

As seções a seguir fornecem detalhes sobre cada etapa da migração em fases de desenvolvimento de software.

Criar tópicos e assinaturas do Pub/Sub

Crie um tópico do Pub/Sub correspondente e a respectiva assinatura. Nesta fase, você configura os tópicos e as assinaturas necessários configurações, como retenção, confirmação e armazenamento de mensagens políticas.

Se necessário, estabeleça e configure cotas para evitar o uso excessivo e inesperados faturamento. Mais importante, recomendamos que você configure uma mensagem morta Tópico do Pub/Sub Lite para capturar as mensagens que não forem migradas no Pub/Sub. Isso permite solucionar erros e identificar a causa raiz das falhas na exportação e reenviar as mensagens com falha ao tema correto, garantindo que não haja perda de dados.

Criar assinaturas de exportação do Pub/Sub Lite

Para cada tópico, crie uma assinatura de exportação do Pub/Sub Lite para exportar mensagens do tópico do Pub/Sub Lite para o tópico do Pub/Sub correspondente. Em vez de definir individualmente a capacidade de processamento para cada exportação use uma reserva do Pub/Sub Lite para gerenciar com eficiência a capacidade de processamento de todos exportar inscrições coletivamente. Ao final dessa fase, Pub/Sub Lite e Pub/Sub tópicos recebem as mesmas mensagens a partir do ponto em que as assinaturas de exportação foram criados.

É possível usar os tópicos do Pub/Sub para desenvolver e testar seus clientes assinantes em fases isoladas. Essa abordagem minimiza a interrupção dos seus aplicativos do Pub/Sub Lite.

Faça a assinatura dupla dos tópicos do Pub/Sub Lite e do Pub/Sub

Em um ambiente de desenvolvimento, atualize os clientes assinantes para ler mensagens diretamente dos tópicos do Pub/Sub, usando a API apropriada do Pub/Sub biblioteca de cliente. Ao contrário do Pub/Sub Lite, o Pub/Sub oferece vários. Ao contrário do Pub/Sub Lite, o Pub/Sub oferece várias modos de transferência (puxar e empurrar), então escolha o que melhor se alinha aos seus os requisitos do seu aplicativo.

  • Para emular o mesmo comportamento do Pub/Sub Lite, configure Instância do Pub/Sub com a API StreamingPull.

  • Em um sistema com vários aplicativos do consumidor, migre gradualmente cada um do aplicativo um por um. Para cada aplicativo assinante, execute o Assinante do Pub/Sub Lite e novo assinante do Pub/Sub no em paralelo, para que você possa verificar o comportamento e o desempenho do novo assinante. Monitore ambos os assinantes para garantir a entrega das mensagens. consistência, tratamento de erros e funcionalidade geral. Depois que todos os assinantes forem migrados e validados com sucesso, desative a versão antiga do Pub/Sub Lite clientes assinantes.

Atualizar editores

Depois que todos os assinantes estiverem consumindo as mensagens do no Pub/Sub, é possível atualizar gradualmente os editores para enviar mensagens diretamente aos tópicos do Pub/Sub. Para fazer isso, atualize seus editores para usar as bibliotecas de cliente do Pub/Sub. Isso garante que você possa transferir gradualmente o tráfego do Pub/Sub Lite para o Pub/Sub.

Desativar o Pub/Sub Lite

Depois de migrar todos os assinantes e editores para o no Pub/Sub, é possível encerrar os recursos do Pub/Sub Lite. Isso e ajuda a evitar custos desnecessários com a infraestrutura ociosa.

A seguir