ID regione
REGION_ID
è un codice abbreviato assegnato da Google in base all'area geografica selezionata quando crei l'app. Il codice non corrisponde a un paese o a una provincia, anche se alcuni ID area geografica potrebbero sembrare simili ai codici paese e provincia più utilizzati. Per le app create dopo febbraio 2020, REGION_ID.r
è incluso negli URL di App Engine. Per le app esistenti create prima di questa data, l'ID regione è facoltativo nell'URL.
Scopri di più sugli ID regione.
Un'app App Engine è composta da una singola risorsa dell'applicazione composta da uno o più servizi. Ogni servizio può essere configurato per utilizzare runtime diversi e operare con impostazioni di prestazioni diverse. All'interno di ciascun servizio, esegui il deployment delle versioni del servizio. Ogni versione viene eseguita all'interno di una o più istanze, a seconda della quantità di traffico che hai configurato.
Componenti di un'applicazione
L'app App Engine viene creata nel progetto Google Cloud quando crei una risorsa dell'applicazione. L'applicazione App Engine è un container di primo livello che include le risorse di servizio, versione e istanza che compongono la tua app. Quando crei la tua app App Engine, tutte le risorse vengono create nell'area geografica che scegli, incluso il codice dell'app, insieme a una raccolta di impostazioni, credenziali e metadati della tua app.
Ogni applicazione App Engine include almeno un servizio, il servizio default
, che può contenere molte versioni, a seconda dello stato di fatturazione della tua applicazione.
Per saperne di più, vedi la sezione Limiti di seguito.
Il seguente diagramma illustra la gerarchia di un'app App Engine in esecuzione con più servizi. In questo diagramma, l'app ha due servizi che contengono più versioni e due di queste versioni sono in esecuzione attivamente su più istanze:
Altri servizi Google Cloud, ad esempio Datastore, sono condivisi tra le tue app App Engine. Per ulteriori informazioni, consulta la sezione Struttura dei servizi web.
Servizi
Utilizza i servizi in App Engine per suddividere le app di grandi dimensioni in componenti logici che possono condividere le funzionalità di App Engine in modo sicuro e comunicare tra loro. In genere i servizi App Engine si comportano come microservizi. Pertanto, puoi eseguire l'intera app in un unico servizio oppure puoi progettare ed eseguire il deployment di più servizi da eseguire come insieme di microservizi.
Ad esempio, un'app che gestisce le richieste dei clienti potrebbe includere servizi separati, ognuno dei quali gestisce attività diverse, come:
- Richieste API da dispositivi mobili
- Richieste interne di tipo amministrativo
- Elaborazione di backend come pipeline di fatturazione e analisi dei dati
Ogni servizio in App Engine è costituito dal codice sorgente della tua app e dai file di configurazione di App Engine corrispondenti. L'insieme di file di cui esegui il deployment in un servizio rappresenta una singola versione del servizio e ogni volta che ne esegui il deployment nel servizio, vengono create versioni aggiuntive all'interno dello stesso servizio.
Versioni
Avere più versioni della tua app all'interno di ogni servizio ti consente di passare rapidamente da una versione all'altra dell'app per eseguire rollback, test o altri eventi temporanei. Puoi instradare il traffico a una o più versioni specifiche della tua app eseguendo la migrazione o la suddivisione.
Istanze
Le versioni all'interno dei tuoi servizi vengono eseguite su una o più istanze. Per impostazione predefinita, App Engine scala la tua app per adattarla al carico. Le tue app faranno lo scale up del numero di istanze in esecuzione per fornire prestazioni coerenti o scale down per ridurre al minimo le istanze inattive e ridurre i costi. Per ulteriori informazioni sulle istanze, consulta Come vengono gestite le istanze.
Richieste di applicazioni
Ogni servizio delle app e ogni versione all'interno di questi servizi devono avere un nome univoco. Puoi quindi utilizzare questi nomi univoci per scegliere come target e indirizzare il traffico a risorse specifiche utilizzando gli URL, ad esempio:
https://VERSION-dot-SERVICE-dot-PROJECT_ID.REGION_ID.r.appspot.com
Tieni presente che la lunghezza combinata di
VERSION-dot-SERVICE-dot-PROJECT_ID
, dove
VERSION
è il nome della versione, SERVICE
è il nome del servizio e PROJECT_ID
è
l'ID progetto, non può contenere più di 63 caratteri e non può iniziare o terminare con
un trattino. Se la lunghezza combinata supera i 63 caratteri, potrebbe essere visualizzato l'errore DNS address could not be
found.
.
Le richieste degli utenti in entrata vengono instradate ai servizi o alle versioni configurate per gestire il traffico. Puoi anche scegliere come target e indirizzare le richieste a servizi e versioni specifici. Per ulteriori informazioni, vedi Comunicazioni tra i servizi.
Logging delle richieste di applicazione
Quando l'applicazione gestisce una richiesta, può anche scrivere i propri messaggi di logging in stdout
e stderr
. Per maggiori dettagli sui log della tua app, consulta la sezione Scrittura dei log delle applicazioni.
Limiti
Il numero massimo di servizi e versioni di cui puoi eseguire il deployment dipende dai prezzi dell'app:Limite | App gratuita | App a pagamento |
---|---|---|
Numero massimo di servizi per app | 5 | 105 |
Numero massimo di versioni per app | 15 | 210 |
Esiste anche un limite al numero di istanze per ciascun servizio con scalabilità manuale o di base:
Numero massimo di istanze per versione di scalabilità manuale/di base | ||
---|---|---|
App gratuita | App a pagamento in USA | App a pagamento UE |
20 | 25 (200 per us-central ) |
25 |
Esiste anche un limite al numero di caratteri nell'URL della tua applicazione.
Descrizione | Limite |
---|---|
Numero massimo di caratteri nell'URL del progetto per
VERSION-dot-SERVICE-dot-PROJECT_ID URL |
63 |