Puoi eseguire la migrazione dall'utilizzo del servizio di code dell'ambiente standard di App Engine (code di attività) tramite l'API Task Queue di App Engine all'accesso allo stesso servizio utilizzando Cloud Tasks, una nuova API RPC/REST. Cloud Tasks può essere utilizzato al di fuori dei runtime di App Engine di prima generazione, in particolare da tutti gli ambienti flessibili di App Engine, nonché dai runtime dell'ambiente standard di App Engine di seconda generazione.
Cloud Tasks e il servizio di coda di attività dell'ambiente standard di App Engine corrente esistono in un unico universo. Puoi aggiungere le stesse code tramite entrambe le API. Indipendentemente dal fatto che utilizzi l'SDK App Engine o la nuova API Cloud Tasks, una coda all'interno dell'app inoltra un'attività a un URL del gestore per l'elaborazione asincrona.
Nuove funzionalità
Cloud Tasks fornisce alcune funzionalità non disponibili tramite l'SDK App Engine, tra cui le seguenti:
Gestione delle code tramite l'API:
Puoi creare, eliminare, mettere in pausa ed eseguire altre attività di gestione delle code utilizzando l'API, tramite la console o tramite il comando
gcloud.Comando Elenco code:
Puoi elencare tutte le code che hai configurato nel tuo progetto.
Comando Elenco attività:
Puoi elencare tutte le attività in una delle tue code.
Integrazione di Identity and Access Management (IAM):
Puoi proteggere l'accesso a code e attività in modo molto granulare utilizzando IAM.
Target HTTP
Puoi indirizzare i gestori a qualsiasi endpoint HTTP con un indirizzo IP pubblico.
Funzionalità delle code di attività non ancora disponibili tramite l'API Cloud Tasks:
-
Puoi utilizzare Cloud Pub/Sub, un prodotto GA, per implementare molti degli stessi casi d'uso delle code in modalità pull.
-
Cloud Tasks non supporta l'inserimento in coda di un'attività come parte di una transazione Cloud Datastore, in modo che l'attività venga inserita in coda solo se la transazione viene eseguita correttamente e sia garantita.
Attività differite/in ritardo:
In alcuni casi in cui potresti aver bisogno di una serie di piccole attività diverse gestite in modo asincrono, ma non vuoi eseguire la configurazione di singoli gestori distinti, l'SDK App Engine ti consente di utilizzare librerie specifiche del runtime per creare semplici funzioni per gestire queste attività. Questa funzionalità non è disponibile in Cloud Tasks. Tieni presente, tuttavia, che le attività normali possono essere pianificate in futuro utilizzando Cloud Tasks.
-
Alcuni runtime che utilizzano l'SDK App Engine hanno API che supportano la multiutenza delle attività tramite gli spazi dei nomi. Questa funzionalità non è disponibile in Cloud Tasks.
-
Il server di sviluppo locale fornito da gcloud CLI o dall'SDK App Engine non supporta gli endpoint simulati per le chiamate API Cloud Tasks.
Aggiunta di attività asincrone:
Gli utenti dell'SDK App Engine possono scegliere di aggiungere attività alle code in modo asincrono. Questa funzionalità non è disponibile in Cloud Tasks.
Per ulteriori informazioni
Guide più dettagliate per la migrazione del codice sono disponibili nella documentazione relativa alle code di attività di App Engine:
- Migrazione delle code in modalità pull di Python 2.7 pull a Pub/Sub
- Migrazione delle code in modalità push di Python 2.7 a Cloud Tasks
- Migrazione delle code in modalità pull di Java 8 a Pub/Sub
- Migrazione delle code in modalità push di Java 8 a Cloud Tasks