Python 2.7 ha raggiunto la fine del supporto
e verrà ritirato
il 31 gennaio 2026. Dopo il ritiro, non potrai eseguire il deployment di applicazioni Python 2.7, anche se la tua organizzazione ha utilizzato in precedenza un criterio dell'organizzazione per riattivare i deployment di runtime legacy. Le tue applicazioni Python 2.7 esistenti continueranno a essere eseguite e a ricevere traffico dopo la
data di ritiro. Ti consigliamo di eseguire la migrazione all'ultima versione supportata di Python.
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
ID regione
REGION_ID è un codice abbreviato assegnato da Google in base alla regione selezionata quando crei l'app. Il codice non corrisponde a un paese o a una provincia, anche se alcuni ID regione possono sembrare simili ai codici di paesi e province 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.
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 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 push, puoi utilizzare i metodi queue.yaml o
Gestione code di Cloud Tasks, ma
non entrambi contemporaneamente. L'unione del metodo di caricamento queue.yaml con i metodi di gestione della coda può produrre risultati inaspettati e non è consigliata.
Per configurare le code pull, devi utilizzare il file 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-queuerate:1/s
Di seguito è riportato un esempio più complesso di configurazione di queue.yaml che dimostra come impostare il numero di tentativi di esecuzione delle attività e modificare la frequenza di elaborazione predefinita.
Il file queue.yaml è un file YAML la cui direttiva principale è queue.
Questa direttiva contiene zero o più code denominate. Ogni definizione di coda può specificare i seguenti elementi:
Elemento
Descrizione
bucket_size (code push)
Facoltativo. Una coda di attività utilizza l'algoritmo bucket di token per controllare la frequenza di
esecuzione delle attività. Ogni coda con nome ha un token bucket che contiene token,
fino al numero massimo specificato dal valore bucket_size. Ogni volta
che l'applicazione esegue un'attività, un token viene rimosso dal bucket.
Continua a elaborare le attività nella coda finché il bucket della coda
non esaurisce i token. App Engine rifornisce il bucket con nuovi token
continuamente in base alla frequenza specificata per la coda.
La dimensione del bucket limita la velocità di elaborazione della coda quando sono presenti molte attività
nella coda 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 l'inserimento di un'attività in coda, ma puoi comunque limitare l'utilizzo delle risorse quando
molte attività vengono inserite in coda in un breve periodo di tempo.
Se non specifichi bucket_size per una coda, il valore predefinito è 5. Ti consigliamo di impostare un valore più elevato
perché la dimensione predefinita potrebbe essere troppo piccola per molti casi d'uso. Ad esempio, puoi determinare le dimensioni del bucket in base alla velocità di elaborazione.
Per ulteriori informazioni su questo elemento, consulta la descrizione comparativa di
max_burst_size
nel riferimento all'API Cloud Tasks.
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 è 1000 attività per coda. Il limite massimo 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 da un po' di tempo.
La limitazione del numero di attività simultanee ti consente di avere un maggiore controllo sulla frequenza di esecuzione della coda e può impedire l'esecuzione di troppe attività contemporaneamente. Inoltre, può evitare la contesa del datastore e mettere
a disposizione le risorse per altre code o l'elaborazione online.
Per ulteriori informazioni su questo elemento, consulta la descrizione comparativa di
max_concurrent_dispatches nel riferimento all'API Cloud Tasks.
mode
Facoltativo.
Identifica la modalità coda. Il valore predefinito di questa impostazione è push,
che identifica una coda come coda push. Se vuoi utilizzare le code pull, imposta la modalità su pull.
name
Obbligatorio.
Il nome della coda. Si tratta
del nome specificato quando chiami
QueueFactory.getQueue().
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
nel Google Cloud console fino alla prima volta che viene utilizzata o configurata.
Puoi configurare la coda predefinita, inclusa la modifica della frequenza predefinita,
definendo una coda denominata "predefinita" nel file queue.yaml.
rate (code push)
Obbligatorio.
La frequenza con cui le attività vengono elaborate in questa coda. Il valore è un numero seguito da una barra e da un'unità di tempo, dove l'unità è s per i secondi, m per i minuti, h per le ore o d per i giorni. Ad esempio, il valore
5/m indica che le attività verranno elaborate a una frequenza di 5 volte al
minuto. Il valore massimo per rate è 500/s.
Se il numero è 0 (ad es. 0/s), la coda è considerata "in pausa" e non vengono elaborate attività.
Per ulteriori informazioni su questo elemento, consulta la descrizione comparativa di
max_dispatches_per_second nel riferimento all'API Cloud Tasks.
retry_parameters
Facoltativo.
Configura i tentativi di nuovo invio per le attività non riuscite nelle code push. Questa aggiunta ti consente di
specificare il numero massimo di volte per riprovare le attività non riuscite in una
coda specifica. Puoi anche impostare un limite di tempo per i tentativi di ripetizione e controllare l'intervallo tra i tentativi.
I parametri di ripetizione possono contenere i seguenti elementi secondari:
task_retry_limit
Il numero di nuovi tentativi. Ad esempio, se viene specificato 0
e l'attività non va a buon fine, non viene eseguito alcun nuovo tentativo. Se viene specificato 1 e l'attività non va a buon fine, viene eseguito un nuovo tentativo per l'attività. Se questo parametro non è specificato, l'operazione viene ripetuta
a tempo indeterminato. Se viene specificato task_retry_limit
con task_age_limit, viene eseguito un nuovo tentativo per l'attività fino a quando non vengono raggiunti entrambi
i limiti.
task_age_limit (code push)
Il limite di tempo per ritentare un'attività non riuscita, misurato dal primo
tentativo di esecuzione dell'attività. Il valore è un numero seguito da un'unità di misura del tempo, dove l'unità è s per i secondi, m per i minuti, h per le ore o d per i giorni.
Ad esempio, il valore 5d specifica un limite di cinque
giorni dopo il primo tentativo di esecuzione dell'attività. Se questo parametro
non è specificato, il tentativo viene ripetuto a tempo indeterminato. Se specificato con
task_retry_limit, App Engine riprova l'attività fino a quando
non vengono raggiunti entrambi i limiti.
min_backoff_seconds (code push)
Il numero minimo di secondi da attendere prima di riprovare un'attività dopo
che non è riuscita. Il valore predefinito è 0.1.
max_backoff_seconds (code push)
Il numero massimo di secondi di attesa prima di riprovare un'attività dopo
che non è riuscita. Il valore predefinito è 3600.
max_doublings (code push)
Il numero massimo di volte in cui l'intervallo tra i tentativi di attività non riuscita verrà raddoppiato prima che l'aumento diventi costante. La
costante è: 2**max_doublings * min_backoff_seconds.
Il valore predefinito è 16.
target (code push)
Facoltativo.
Una stringa che indica un servizio/una versione, una versione frontend o un backend su cui eseguire tutte le attività in coda in questa coda. Il valore predefinito è la stringa vuota.
La stringa viene anteposta al nome di dominio della tua app durante la compilazione della richiesta HTTP per un'attività. Ad esempio, se il tuo ID app è my-app e imposti il target su my-version-dot-my-service, il nome host dell'URL verrà impostato su my-version-dot-my-service-dot-my-app.REGION_ID.r.appspot.com.
Se target non è specificato, le attività vengono richiamate nella stessa versione
dell'applicazione in cui sono state messe in coda. Pertanto, se hai inserito in coda un compito dalla versione dell'applicazione predefinita senza specificare un target nella coda, il compito viene richiamato nella versione dell'applicazione predefinita.
Tieni presente che se la versione predefinita dell'applicazione cambia tra il momento in cui l'attività viene messa in coda e il momento in cui viene eseguita, l'attività verrà eseguita nella nuova versione predefinita.
Se utilizzi servizi insieme a un file di invio, la richiesta HTTP dell'attività potrebbe essere intercettata e reindirizzata a un altro servizio.
Per tutte le code all'interno di un'app è possibile specificare i seguenti elementi:
Elemento
Descrizione
total_storage_limit
Facoltativo.
Una stringa che sostituisce il limite di spazio di archiviazione della quota predefinito disponibile per lo spazio di archiviazione della coda di attività (100 M). Ad esempio:
total_storage_limit:1.2Gqueue:-name:fooqueue
Questa quota fa parte della quota di spazio di archiviazione totale dell'applicazione (inclusa la quota del datastore e dell'archivio BLOB).
Se non viene specificato alcun suffisso, il numero specificato viene interpretato come byte. Sono supportati i seguenti suffissi:
B (byte)
K (kilobyte)
M (megabyte)
G (gigabyte)
T (terabyte)
Se total_storage_limit supera lo spazio di archiviazione totale su disco disponibile per un'applicazione, il limite è limitato allo spazio di archiviazione disponibile.
Eseguire il deployment del file di configurazione della coda
Il file queue.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 il comando seguente:
gcloudappdeployqueue.yaml
Eliminazione delle code
Per eliminare una coda:
Rimuovi la definizione della coda dal file queue.yaml.
Carica la modifica nel file queue.yaml.
gcloud app deploy queue.yaml
Elimina la coda nella Google Cloud console, selezionala e fai clic su
Elimina coda:
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-04 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eREGION_ID\u003c/code\u003e is a code assigned by Google based on the region selected during app creation, which is included in App Engine URLs for apps created after February 2020.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003equeue.yaml\u003c/code\u003e file configures task queues (push or pull), and each App Engine app has a preconfigured \u003ccode\u003edefault\u003c/code\u003e push queue that can be modified or others can be created using this file.\u003c/p\u003e\n"],["\u003cp\u003ePush queues can be configured using either \u003ccode\u003equeue.yaml\u003c/code\u003e or Queue Management methods from Cloud Tasks, but mixing these methods can lead to errors, whereas pull queues must be configured using \u003ccode\u003equeue.yaml\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003equeue.yaml\u003c/code\u003e file defines settings such as \u003ccode\u003ebucket_size\u003c/code\u003e, \u003ccode\u003emax_concurrent_requests\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e, \u003ccode\u003ename\u003c/code\u003e, \u003ccode\u003erate\u003c/code\u003e, \u003ccode\u003eretry_parameters\u003c/code\u003e, and \u003ccode\u003etarget\u003c/code\u003e for each queue.\u003c/p\u003e\n"],["\u003cp\u003eTo deploy changes to the queue configuration or to delete queues, the \u003ccode\u003equeue.yaml\u003c/code\u003e file must be uploaded using the \u003ccode\u003egcloud app deploy queue.yaml\u003c/code\u003e command, after which queues can be deleted in the Google Cloud console.\u003c/p\u003e\n"]]],[],null,["# queue.yaml Reference\n\n### Region ID\n\nThe \u003cvar translate=\"no\"\u003eREGION_ID\u003c/var\u003e is an abbreviated code that Google assigns\nbased on the region you select when you create your app. The code does not\ncorrespond to a country or province, even though some region IDs may appear\nsimilar to commonly used country and province codes. For apps created after\nFebruary 2020, \u003cvar translate=\"no\"\u003eREGION_ID\u003c/var\u003e`.r` is included in\nApp Engine URLs. For existing apps created before this date, the\nregion ID is optional in the URL.\n\nLearn more\n[about region IDs](/appengine/docs/legacy/standard/python/how-requests-are-routed#region-id). \nOK\n\nThe `queue.yaml` configuration file is used to create and configure almost all\nof the task queues\n\n([push](/appengine/docs/legacy/standard/python/taskqueue/push) or [pull](/appengine/docs/legacy/standard/python/taskqueue/pull))\n\nyour app uses. All App Engine apps come with\nan automatically preconfigured push queue named `default`. Although you do not\ncreate the `default` queue yourself, you can add other queues or change the\nconfiguration of the `default` queue using the `queue.yaml` file.\n\n\u003cbr /\u003e\n\nTo configure push queues, you can use either `queue.yaml` or\n[Queue Management](/tasks/docs/queue-yaml) methods from Cloud Tasks, but\n[not both](/tasks/docs/queue-yaml#pitfalls) at the same time. Mixing the\n`queue.yaml` upload method with Queue Management methods can produce unexpected\nresults and is not recommended.\nTo configure pull queues, you must use the `queue.yaml` file.\n\n\u003cbr /\u003e\n\n| **Caution:** Uploading a `queue.yaml` file via the gcloud CLI below version `332.0.0` uses a deprecated interface to the service. Starting on `2022-09-20`, attempts to use the upload method can fail with server errors. To resolve this, make sure the Cloud Tasks API is enabled in your project and your gcloud CLI is updated to at least version `332.0.0`.\n\nExample\n-------\n\nThe following a basic example that defines a named queue and overrides the\ndefault processing rate: \n\n queue:\n - name: my-push-queue\n rate: 1/s\n\nThe following is a more complex example of a `queue.yaml` configuration that\ndemonstrates setting up the number of task tries and modifying the default processing rate. \n\n queue:\n - name: fooqueue\n rate: 1/s\n retry_parameters:\n task_retry_limit: 7\n task_age_limit: 2d\n - name: barqueue\n rate: 1/s\n retry_parameters:\n min_backoff_seconds: 10\n max_backoff_seconds: 200\n max_doublings: 0\n - name: bazqueue\n rate: 1/s\n retry_parameters:\n min_backoff_seconds: 10\n max_backoff_seconds: 200\n max_doublings: 3\n\nSyntax\n------\n\nThe `queue.yaml` file is a YAML file whose root directive is `queue`.\nThis directive contains zero or more named queues. Each queue definition can\nspecify the following elements:\n\nThe following elements can be specified for all queues within an app:\n\nDeploying the queue configuration file\n--------------------------------------\n\nThe `queue.yaml` file should reside in the root directory or in the directory that defines the default service.\n\nTo deploy the queue configuration file, run the following command: \n\n gcloud app deploy queue.yaml\n\nDeleting queues\n---------------\n\nTo delete a queue:\n\n1. Remove the queue definition from your `queue.yaml` file.\n\n2. Upload the change to your `queue.yaml` file.\n\n gcloud app deploy queue.yaml\n3. Delete the queue in the Google Cloud console, select the queue and click\n **Delete queue**:\n\n [Go to the Task queues page](https://console.cloud.google.com/appengine/taskqueues)\n\nIf you delete a queue from the Google Cloud console, you must wait 7 days\nbefore recreating with the same name."]]