ID regione
REGION_ID
è un codice abbreviato che Google assegna
in base alla regione selezionata al momento della creazione dell'app. Il codice non
corrisponde a un paese o a una provincia, anche se alcuni ID regione possono sembrare
simili ai codici paese e provincia di uso comune. 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.
Il file di configurazione queue.yaml
viene utilizzato per creare e configurare quasi tutte
le code di attività
(push o pull)
utilizzate dalla tua app. Tutte le app di App Engine sono dotate
di una coda in modalità push preconfigurata automaticamente denominata default
. Anche se non crei personalmente la coda default
, puoi aggiungere altre code o modificare la configurazione della coda default
utilizzando il file queue.yaml
.
Per configurare le code in modalità push, puoi utilizzare i metodi queue.yaml
o di gestione delle code di Cloud Tasks, ma non entrambi contemporaneamente. La combinazione del metodo di caricamento queue.yaml
con i metodi di gestione delle code può produrre risultati imprevisti e non è consigliata.
queue.yaml
.
Esempio
Di seguito è riportato un esempio di base che definisce una coda denominata e sostituisce la frequenza di elaborazione predefinita:
queue:
- name: my-push-queue
rate: 1/s
Di seguito è riportato un esempio più complesso di configurazione queue.yaml
che mostra la configurazione del numero di tentativi di attività e la modifica della frequenza di elaborazione predefinita.
queue:
- name: fooqueue
rate: 1/s
retry_parameters:
task_retry_limit: 7
task_age_limit: 2d
- name: barqueue
rate: 1/s
retry_parameters:
min_backoff_seconds: 10
max_backoff_seconds: 200
max_doublings: 0
- name: bazqueue
rate: 1/s
retry_parameters:
min_backoff_seconds: 10
max_backoff_seconds: 200
max_doublings: 3
Sintassi
Il file queue.yaml
è un file YAML con istruzione principale queue
.
Questa istruzione contiene zero o più code con nome. Ogni definizione di coda può specificare i seguenti elementi:
Elemento | Descrizione |
---|---|
bucket_size (code push) |
Facoltativo. Una coda di attività utilizza l'algoritmo del bucket token per controllare la frequenza di esecuzione delle attività. Ogni coda denominata ha un token bucket che contiene i token, fino al limite massimo specificato dal valore bucket_size. Ogni volta che l'applicazione esegue un'attività, un token viene rimosso dal bucket. Continuerai a elaborare le attività in coda finché il bucket della coda non esaurisce i token. App Engine ricarica il bucket con nuovi token continuamente in base alla frequenza specificata per la coda. Le dimensioni del bucket limitano la velocità di elaborazione della coda quando sono presenti molte attività e la frequenza è elevata. Il valore massimo per la dimensione del bucket è 500. In questo modo puoi avere una frequenza elevata, in modo che l'elaborazione inizi poco dopo che un'attività viene accodata, ma puoi comunque limitare l'utilizzo delle risorse quando molte attività vengono accodate in un breve periodo di tempo. Se non specifichi bucket_size per una coda, il valore predefinito è 5. Ti consigliamo di impostare un valore maggiore per perché la dimensione predefinita potrebbe essere troppo piccola per molti casi d'uso. Ad esempio, potresti determinare la dimensione del bucket in base alla tariffa di elaborazione. Per ulteriori informazioni su questo elemento, consulta la descrizione comparativa di
|
max_concurrent_requests (code push) |
Facoltativo. Imposta il numero massimo di attività che possono essere eseguite contemporaneamente dalla coda specificata. Il valore è un numero intero. Per impostazione predefinita, il limite è di 1000 attività per coda. Il limite superiore consigliato è di 5000 attività per coda. Tieni presente che le code potrebbero aumentare lentamente quando vengono create per la prima volta o se sono inattive per un po' di tempo. La limitazione del numero di attività simultanee offre un maggiore controllo sulla frequenza di esecuzione della coda e può impedire l'esecuzione di troppe attività contemporaneamente. Può anche evitare la contesa del datastore e rendere disponibili risorse per altre code o elaborazione online. Per ulteriori informazioni su questo elemento, consulta la descrizione comparativa di
|
mode |
Facoltativo.
Identifica la modalità in coda. Il valore predefinito di questa impostazione è |
name |
Obbligatorio.
Il nome della coda. Questo è il nome che specifichi quando chiami
Un nome coda può contenere lettere maiuscole e minuscole, numeri e trattini. La lunghezza massima di un nome coda è 100 caratteri.
Tutte le app hanno una coda in modalità push denominata predefinita. Questa coda ha una frequenza preimpostata di 5 attività al secondo. Tieni presente che questa coda predefinita non viene visualizzata nella console Google Cloud fino alla prima volta che viene utilizzata o configurata.
Puoi configurare la coda predefinita, inclusa la modifica della frequenza predefinita, definendo una coda denominata "default" nel file |
rate (code push) |
Obbligatorio.
Frequenza di elaborazione delle attività in questa coda. Il valore è un numero seguito da una barra e da un'unità di tempo, dove l'unità è
Se il numero è Per ulteriori informazioni su questo elemento, consulta la descrizione comparativa di
|
retry_parameters |
Facoltativo. Configura i nuovi tentativi per le attività non riuscite nelle code in modalità push. Questa aggiunta consente di specificare il numero massimo di volte in cui è possibile riprovare le attività non riuscite in una coda specifica. Puoi anche impostare un limite di tempo per i nuovi tentativi e controllare l'intervallo tra un tentativo e l'altro. I parametri dei nuovi tentativi possono contenere i seguenti sottoelementi:
|
target (code push) |
Facoltativo. Una stringa che chiama un servizio/una versione, una versione di frontend o un backend su cui eseguire tutte le attività accodate in questa coda. Il valore predefinito è la stringa vuota.
La stringa viene anteposta al nome di dominio dell'app quando crei la richiesta HTTP per un'attività. Ad esempio, se l'ID app
è Se la destinazione non è specificata, le attività vengono richiamate nella stessa versione dell'applicazione in cui sono state accodate. Quindi, se hai accodato un'attività dalla versione predefinita dell'applicazione senza specificare una destinazione in coda, l'attività viene richiamata nella versione predefinita dell'applicazione. Tieni presente che se la versione predefinita dell'applicazione cambia tra il momento in cui l'attività viene accodata e quella in cui viene eseguita, l'attività verrà eseguita nella nuova versione predefinita. Se utilizzi i servizi insieme a un file di invio, la richiesta HTTP della tua attività potrebbe essere intercettata e reindirizzata a un altro servizio. |
È possibile specificare i seguenti elementi per tutte le code all'interno di un'app:
Elemento | Descrizione |
---|---|
total_storage_limit |
Facoltativo. Una stringa che sostituisce il limite di spazio di archiviazione predefinito della quota disponibile per l'archiviazione in coda di attività (100 milioni). Ad esempio: total_storage_limit: 1.2G queue: - name: fooqueue Questa quota fa parte della quota di archiviazione totale dell'applicazione (inclusa la quota di datastore e BLOB). Se non viene specificato alcun suffisso, il numero specificato viene interpretato come byte. Sono supportati i seguenti suffissi:
Se |
Deployment del file di configurazione della coda
Il filequeue.yaml
deve trovarsi nella directory principale o nella directory che definisce il servizio predefinito.
Per eseguire il deployment del file di configurazione della coda, esegui questo comando:
gcloud app deploy queue.yaml
Eliminazione delle code in corso...
Per eliminare una coda:
Rimuovi la definizione della coda dal file
queue.yaml
.Carica la modifica nel file
queue.yaml
.gcloud app deploy baseline.yaml
Elimina la coda nella console Google Cloud, selezionala e fai clic su Elimina coda:
Se elimini una coda dalla console Google Cloud, devi attendere 7 giorni prima di ricrearla con lo stesso nome.