Questa sezione della guida sugli Google Cloud archetipi di deployment descrive l'archetipo di deployment globale.
In un'architettura basata sull'archetipo di deployment globale, l'applicazione viene eseguita in più Google Cloud regioni in tutto il mondo. Puoi eseguire il deployment dell'applicazione come stack distribuito indipendente dalla località o come più stack isolati a livello regionale. In entrambi i casi, un bilanciatore del carico anycast globale distribuisce il traffico alla regione appropriata. L'applicazione scrive i dati e li legge da un database replicato in modo sincrono disponibile in tutte le regioni, come Spanner con configurazione multiregionale. Anche altri componenti dello stack di applicazioni possono essere globali, come la cache e l'object store.
Il seguente diagramma mostra la variante distribuita e indipendente dalla località dell'archetipo di deployment globale:
Il diagramma precedente mostra uno stack di applicazioni non sensibili alla località, con istanze frontend e backend (in genere microservizi) distribuite in più zone in tre regioni Google Cloud . Un bilanciatore del carico anycast globale distribuisce il traffico in entrata a un'istanza frontend appropriata. Questa distribuzione si basa sulla disponibilità e sulla capacità delle istanze e sulla loro vicinanza geografica all'origine del traffico. I bilanciatori del carico interni multiregionali distribuiscono il traffico dalle istanze di frontend alle istanze di backend appropriate in base alla loro disponibilità e capacità. L'applicazione utilizza un database replicato in modo sincrono e disponibile in tutte le regioni.
Il seguente diagramma mostra una variante dell'archetipo di deployment globale con stack di applicazioni isolati a livello regionale:
Il diagramma precedente mostra stack di applicazioni isolati a livello regionale che vengono eseguiti in più zone in due regioni Google Cloud . Questa topologia è simile all'archetipo di deployment multiregionale, ma utilizza un bilanciatore del carico anycast globale anziché il routing DNS. Il bilanciatore del carico globale distribuisce il traffico in entrata a un frontend nella regione più vicina all'utente. Entrambi gli stack di applicazioni scrivono dati e leggono da un database replicato in modo sincrono e disponibile in entrambe le regioni. Se si verifica un'interruzione del servizio in una delle due regioni, il bilanciatore del carico globale invia le richieste degli utenti a un frontend nell'altra regione.
Casi d'uso
Le sezioni seguenti forniscono esempi di casi d'uso per i quali l'archetipo di deployment globale è una scelta appropriata.
Applicazione a disponibilità elevata per un pubblico globale
Consigliamo l'archetipo di deployment globale per le applicazioni che servono utenti in tutto il mondo e, pertanto, hanno bisogno di alta disponibilità e robustezza contro le interruzioni in più regioni.
Opportunità di ottimizzare i costi e semplificare le operazioni
Con l'archetipo di deployment globale, puoi utilizzare risorse globali ad alta disponibilità come un bilanciatore del carico globale e un database globale. Rispetto a un deployment multiregionale, un deployment globale può contribuire a ridurre i costi e semplificare le operazioni perché esegui il provisioning e la gestione di un numero inferiore di risorse.
Considerazioni sulla progettazione
Quando crei un'architettura basata sull'archetipo di deployment globale, considera i seguenti fattori di progettazione.
Costi di archiviazione, replica e networking
In un'architettura distribuita a livello globale, il volume di traffico di rete tra località diverse può essere elevato rispetto a un deployment regionale. Potresti anche archiviare e replicare più dati. Quando crei un'architettura basata sull'archetipo di deployment globale, considera il costo potenzialmente più elevato per l'archiviazione e il networking dei dati. Per le applicazioni business-critical, il vantaggio di disponibilità di un'architettura distribuita a livello globale potrebbe superare i costi più elevati di rete e archiviazione.
Gestire le modifiche alle risorse globali
L'opportunità di utilizzare risorse globali ad alta disponibilità può aiutarti a ottimizzare i costi e semplificare le operazioni. Tuttavia, per assicurarti che le risorse globali non diventino punti di errore singoli (SPOF), devi gestire attentamente le modifiche alla configurazione delle risorse globali.
Architettura di riferimento
Per un'architettura di riferimento che puoi utilizzare per progettare un deployment globale, vedi Deployment globale con Compute Engine e Spanner.