I progetti software basati su cloud devono utilizzare più ambienti. Questi ambienti in genere hanno nomi come dev
, qa
, staging
e prod
.
È fondamentale che questi ambienti siano completamente isolati l'uno dall'altro e in genere abbiano autorizzazioni di accesso dell'operatore molto diverse.
Ad esempio, il team di sviluppo potrebbe avere accesso completo all'ambiente dev
, ma solo accesso limitato all'ambiente prod
, con il deployment di tutto il codice gestito solo da script automatici. Inoltre, è assolutamente essenziale che i dati nei diversi ambienti rimangano isolati.
L'utilizzo di più progetti Google Cloud soddisfa perfettamente questi requisiti, poiché i progetti forniscono un isolamento completo di codice e dati e le autorizzazioni dell'operatore possono essere gestite separatamente. Poiché App Engine scala automaticamente le sue istanze di pubblicazione, paghi solo per ciò che utilizzi. Ad esempio, se il tuo ambiente di staging è necessario solo una settimana su quattro, non pagherai i costi delle istanze di pubblicazione per le altre tre. Tuttavia, tieni presente che ti verrà addebitato il costo per tutti i dati archiviati in questi progetti.
Denominazione degli ambienti
Se scegli di creare l'applicazione di microservizi utilizzando solo più servizi, puoi creare un singolo progetto Google Cloud per ciascuno dei tuoi ambienti e rinominarli di conseguenza, ad esempio web-app-dev
, web-app-qa
e web-app-prod
.
In alternativa, se scegli di creare l'applicazione di microservizi utilizzando più progetti, puoi ottenere la stessa separazione tra ambienti, ma dovrai utilizzare più progetti, ad esempio web-app-dev
, web-app-prod
, user-service-dev
e user-service-prod
.
Dovrai utilizzare pattern di codice per assicurarti che i progetti dev
chiamino solo altri progetti dev
e che i progetti prod
chiamino solo altri progetti prod
.
Passaggi successivi
- Consulta una panoramica dell'architettura dei microservizi su App Engine.
- Scopri le best practice per progettare API per la comunicazione tra microservizi.
- Scopri le best practice per il rendimento dei microservizi.
- Scopri come eseguire la migrazione di un'applicazione monolitica esistente a un'applicazione con microservizi.