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 e 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 políticas do IAM.
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
Pub/Sub Lite: Para a entrega de mensagens, apenas o Pub/Sub Lite oferece suporte à API StreamingPull RPC.
Pub/Sub. Para a entrega de mensagens, o Pub/Sub oferece várias opções de entrega de mensagens, incluindo Entrega de mensagens do StreamingPull.
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 rígidos, 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 preços.
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 recursos 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.
- Criar os tópicos relevantes do Pub/Sub e uma assinatura ao tópico.
- Crie uma assinatura de exportação do Pub/Sub Lite.
- Assinar o Pub/Sub e o Pub/Sub Lite assinaturas.
- Atualizar gradualmente os editores para enviar mensagens a o tópico do Pub/Sub em vez do tópico do Pub/Sub Lite.
- Verifique se a carga de trabalho migrada está funcionando conforme o esperado.
- 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 em 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 sejam 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.