Archetipo di deployment globale di Google Cloud

Last reviewed 2024-03-29 UTC

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

In un'architettura basata sull'archetipo di deployment globale, l'applicazione viene eseguita in più regioni Google Cloud in tutto il mondo. Puoi eseguire il deployment dell'applicazione come stack distribuito, non sensibile alla località, 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 i dati e legge da un database replicato in modo sincrono disponibile in tutte le regioni, ad esempio Spanner con configurazione per più regioni. Anche altri componenti dello stack di applicazioni possono essere globali, ad esempio la cache e l'archivio di oggetti.

Il seguente diagramma mostra la variante distribuita, senza informazioni sulla località, 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 che non conosce la posizione, con istanze di frontend e backend (in genere microservizi) distribuite in più zone in tre regioni di 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 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 di 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 e leggono i dati in un database che è 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 utente a un frontend nell'altra regione.

Casi d'uso

Le seguenti sezioni forniscono esempi di casi d'uso per cui 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 gli utenti di tutto il mondo e, pertanto, hanno bisogno di alta disponibilità 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 a disponibilità elevata, 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 a semplificare le operazioni, perché esegui il provisioning e gestisci meno risorse.

Note sul layout

Quando crei un'architettura basata sull'archetipo di deployment globale, prendi in considerazione 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 più località può essere elevato rispetto a un deployment a livello di regione. 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 in termini di disponibilità di un'architettura distribuita a livello globale potrebbe superare i costi di networking e archiviazione più elevati.

Gestione delle 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 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.