Runtime dell'ambiente standard di App Engine

L'ambiente standard di App Engine ha due generazioni di ambienti di runtime. I runtime di seconda generazione migliorano in modo significativo le funzionalità di App Engine e rimuovono alcune delle limitazioni dei runtime di prima generazione. Questa pagina descrive le somiglianze e le differenze tra i runtime di prima e seconda generazione.

Seconda generazione Prima generazione
Lingue supportate Python 3
Java 11 o versioni successive
Node.js
PHP 7/8
Ruby
Go 1.12 e versioni successive
Python 2.7
Java 8
PHP 5.5
Go 1.11
Supporto di estensioni di lingua e librerie di sistema Qualsiasi estensione o libreria Python 2.7, PHP 5.5: estensioni e librerie che utilizzano la lista consentita
Java 8, Go 1.11: qualsiasi estensione o libreria
API supportate

Per accedere ai servizi Google Cloud completi, utilizza le librerie client di Cloud open source.

Durante l'aggiornamento ai runtime Python 3, Java 11 e versioni successive o Go 1.12 e versioni successive, puoi continuare a utilizzare molti dei servizi in bundle di App Engine. Per saperne di più, consulta le guide per Python 3, Java 11+ e Go 1.12 e versioni successive per maggiori dettagli.

Librerie client di Cloud e servizi in bundle di App Engine
Per l'archiviazione di file BLOB di grandi dimensioni, utilizza Cloud Storage o continua a utilizzare il servizio in bundle API Blobstore di App Engine.
API Blobstore App Engine
Per la persistenza dei dati, utilizza Firestore in modalità Datastore e Cloud SQL per l'archiviazione relazionale. In alternativa, puoi continuare a utilizzare il servizio in bundle dell'API Datastore di App Engine.
API App Engine Datastore
Per l'esecuzione di attività differita, continua a utilizzare l'API Deferred (Python), l'API DeferredTask (Java) e l'API Delay (Go). Gli utenti PHP possono continuare a specificare l'esecuzione differita tramite il servizio in bundle API Task Queues. In alternativa, puoi implementare la funzionalità differita utilizzando Cloud Tasks.
API App Engine Deferred
Per l'elaborazione delle immagini, puoi utilizzare Cloud Storage per pubblicare le immagini direttamente oppure utilizzare una rete CDN (Content Delivery Network) di terze parti o una libreria di elaborazione delle immagini.
In alternativa, puoi continuare a utilizzare il servizio in bundle dell'API App Engine Images.
API App Engine Images
Per la messaggistica in entrata o in uscita, continua a utilizzare il servizio in bundle dell'API Mail di App Engine. In alternativa per la messaggistica in uscita, puoi utilizzare un provider di posta di terze parti come SendGrid, Mailgun o Mailjet.
Al momento, un'alternativa di terze parti consigliata per la messaggistica in entrata non è disponibile.
API Mail di App Engine
Per memorizzare i dati dell'app nella cache, crea un'istanza Memorystore e connettila alla tua app utilizzando l' accesso VPC serverless. In alternativa, continua a utilizzare il servizio in bundle dell'API App Engine Memcache. API App Engine Memcache
Per gli indici di documenti disponibili per la ricerca, ospita qualsiasi database di ricerca a testo intero come Elasticsearch su Compute Engine e accedi allo stesso dal tuo servizio. Google Cloud Marketplace offre inoltre un servizio Elasticsearch basato su SaaS. In alternativa, continua a utilizzare il servizio in bundle dell'API App Engine Search. API App Engine Search
Per eseguire attività esterne, rimani nel servizio in bundle dell'API Task Queues di App Engine per le code in modalità push e pull o esegui la migrazione delle code in modalità push a Cloud Tasks.
e code in modalità pull a Pub/Sub.
API App Engine Task Queue
Per l'autenticazione degli utenti, continua a utilizzare il servizio in bundle di API Utenti di App Engine o esegui la migrazione a un servizio di autenticazione descritto in Opzioni di autenticazione utente. API App Engine Users
Accesso alla rete esterna Accesso completo Python 2.7, PHP 5.5: tramite l'API URL Fetch
Java 8, Go 1.11: accesso completo.
Accesso al file system Accesso in lettura/scrittura a /tmp Python 2.7, PHP 5.5: nessuno
Java 8, Go 1.11: accesso in lettura/scrittura a /tmp
Runtime linguaggio Runtime open source non modificato Modificata per App Engine
Meccanismo di isolamento Sandbox dei container basata su gVisor Sandbox dei container basata su gVisor

Supporto al runtime di prima generazione di App Engine

I runtime di prima generazione di App Engine hanno raggiunto la fine del supporto. Google non applicherà più aggiornamenti o patch di sicurezza ai componenti dell'ambiente di runtime che hanno raggiunto la fine del supporto.

Per scoprire di più sul piano di supporto per i runtime di prima generazione, consulta Supporto per runtime legacy e Ciclo di vita dell'esecuzione.

Somiglianze tra runtime di prima e seconda generazione

  • Tempi di scale up quasi istantanei per rispondere ai picchi di traffico
  • Le applicazioni vengono create utilizzando lo stesso processo di compilazione
  • Stesso SLA (accordo sul livello del servizio) per i servizi GA
  • Supporto per i comandi gcloud identici e la stessa interfaccia della console di Google Cloud
  • Livello gratuito

Risorse per la migrazione del runtime dalla prima alla seconda generazione

Le guide alla migrazione sono disponibili per ogni runtime dei linguaggi nella pagina Assistenza a lungo termine.