Esta secção do guia de Google Cloud arquétipos de implementação descreve o arquétipo de implementação global.
Numa arquitetura baseada no arquétipo de implementação global, a aplicação é executada em várias Google Cloud regiões em todo o mundo. Pode implementar a aplicação como uma pilha distribuída sem reconhecimento de localização ou como várias pilhas isoladas regionalmente. Em qualquer dos casos, um balanceador de carga de anycast global distribui o tráfego para a região adequada. A aplicação escreve dados e lê dados de uma base de dados replicada de forma síncrona que está disponível em todas as regiões, como o Spanner com configuração multirregional. Outros componentes da pilha de aplicações também podem ser globais, como a cache e o armazenamento de objetos.
O diagrama seguinte mostra a variante distribuída independente da localização do arquétipo de implementação global:
O diagrama anterior mostra uma pilha de aplicações sem reconhecimento da localização, com instâncias de front-end e back-end (normalmente, microsserviços) distribuídas por várias zonas em três Google Cloud regiões. Um equilibrador de carga de anycast global distribui o tráfego recebido para uma instância de front-end adequada. Esta distribuição baseia-se na disponibilidade e na capacidade das instâncias, bem como na respetiva proximidade geográfica da origem do tráfego. Os balanceadores de carga internos entre regiões distribuem o tráfego das instâncias de front-end para as instâncias de back-end adequadas com base na respetiva disponibilidade e capacidade. A aplicação usa uma base de dados replicada de forma síncrona e disponível em todas as regiões.
O diagrama seguinte mostra uma variante do arquétipo de implementação global com pilhas de aplicações isoladas regionalmente:
O diagrama anterior mostra pilhas de aplicações isoladas regionalmente que são executadas em várias zonas em duas Google Cloud regiões. Esta topologia é semelhante ao arquétipo de implementação multirregional, mas usa um equilibrador de carga anycast global em vez do encaminhamento DNS. O balanceador de carga global distribui o tráfego de entrada para um front-end na região mais próxima do utilizador. Ambas as pilhas de aplicações escrevem dados e leem dados de uma base de dados replicada de forma síncrona e disponível em ambas as regiões. Se ocorrer uma indisponibilidade numa das duas regiões, o balanceador de carga global envia pedidos de utilizadores para um front-end na outra região.
Exemplos de utilização
As secções seguintes fornecem exemplos de utilização para os quais o arquétipo de implementação global é uma escolha adequada.
Aplicação altamente disponível para um público global
Recomendamos o arquétipo de implementação global para aplicações que atendem utilizadores em todo o mundo e, por isso, precisam de alta disponibilidade e robustez contra interrupções em várias regiões.
Oportunidade de otimizar os custos e simplificar as operações
Com o arquétipo de implementação global, pode usar recursos globais de alta disponibilidade, como um equilibrador de carga global e uma base de dados global. Em comparação com uma implementação multirregional, uma implementação global pode ajudar a reduzir os custos e simplificar as operações, uma vez que aprovisiona e gere menos recursos.
Considerações de design
Quando cria uma arquitetura baseada no arquétipo de implementação global, considere os seguintes fatores de design.
Custos de armazenamento, replicação e rede
Numa arquitetura distribuída globalmente, o volume de tráfego de rede entre localizações pode ser elevado em comparação com uma implementação regional. Também pode armazenar e replicar mais dados. Quando cria uma arquitetura baseada no arquétipo de implementação global, considere o custo potencialmente mais elevado do armazenamento de dados e da rede. Para aplicações essenciais para o negócio, a vantagem de disponibilidade de uma arquitetura distribuída globalmente pode compensar os custos de rede e armazenamento mais elevados.
Gerir alterações aos recursos globais
A oportunidade de usar recursos globais altamente disponíveis pode ajudar a otimizar os custos e simplificar as operações. No entanto, para garantir que os recursos globais não se tornam pontos únicos de falha (SPOF), tem de gerir cuidadosamente as alterações de configuração aos recursos globais.
Arquitetura de referência
Para ver uma arquitetura de referência que pode usar para criar uma implementação global, consulte o artigo Implementação global com o Compute Engine e o Spanner.