Archetipo di deployment globale di Google Cloud

Last reviewed 2024-03-29 UTC

Questa sezione della guida agli archetipi di deployment di Google Cloud descrive l'archetipo del deployment globale.

Con un'architettura basata sull'archetipo di deployment globale, l'applicazione viene eseguita in più regioni di Google Cloud in tutto il mondo. Puoi eseguire il deployment dell'applicazione come stack location-unaware distribuito o come più stack isolati a livello di regione. In entrambi i casi, un bilanciatore del carico anycast globale distribuisce il traffico nella regione appropriata. L'applicazione scrive e legge dati in un database replicato in modo sincrono disponibile in tutte le regioni, ad esempio Spanner con configurazione multiregionale. Anche altri componenti dello stack di applicazioni possono essere globali, come la cache e l'archivio di oggetti.

Il seguente diagramma mostra la variante localizzata senza intervento distribuito dell'archetipo di deployment globale:

Archetipo di deployment globale con uno stack di applicazioni distribuito a livello globale.

Il diagramma precedente mostra uno stack di applicazioni non basato sulla posizione, con istanze di 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 di frontend appropriata. Questa distribuzione si basa sulla disponibilità e sulla capacità delle istanze e sulla loro vicinanza geografica alla sorgente del traffico. I bilanciatori del carico interni tra regioni 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 nelle varie regioni.

Il seguente diagramma mostra una variante dell'archetipo di deployment globale con stack di applicazioni isolati a livello di regione:

Archetipo di deployment globale con stack di applicazioni isolati a livello di regione.

Il diagramma precedente mostra gli stack di applicazioni isolati a livello di regione 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 dell'applicazione scrivono e leggono i dati in un database replicato in modo sincrono e disponibile in entrambe le regioni. Se si verifica un'interruzione 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 destinate agli utenti di tutto il mondo e, di conseguenza, che hanno bisogno di disponibilità elevata e robustezza contro le interruzioni in più regioni.

Opportunità per 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ò aiutare a ridurre i costi e semplificare le operazioni grazie al provisioning e alla gestione di meno risorse.

Note sul layout

Quando crei un'architettura basata sull'archetipo di deployment globale, considera i fattori di progettazione riportati di seguito.

Costi di archiviazione, replica e networking

In un'architettura distribuita a livello globale, il volume di traffico di rete tra località può essere elevato rispetto a un deployment regionale. Puoi 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 della disponibilità di un'architettura distribuita a livello globale potrebbe superare i maggiori costi di networking e archiviazione.

Gestione delle modifiche alle risorse globali

La possibilità di utilizzare risorse globali a disponibilità elevata può aiutarti a ottimizzare i costi e semplificare le operazioni. Tuttavia, per assicurarti che le risorse globali non diventino single point of failure (SPOF), devi gestire con attenzione le modifiche alla configurazione delle risorse globali.

Architettura di riferimento

Per un'architettura di riferimento da utilizzare per progettare un deployment globale, consulta Deployment globale con Compute Engine e Spanner.