The App Engine standard environment has two generations of runtime environments. The second-generation runtimes significantly improve the capabilities of App Engine and remove some of the limitations of the first-generation runtimes. This page describes the similarities and differences between the first- and second-generation runtimes.
|Language extension and system library support||Any extension or library||Python 2.7, PHP 5.5: Allowlisted extensions and libraries
Java 8, Go 1.11: Any extension or library
To access full-featured Google Cloud services, use the open source Cloud Client Libraries.
|Proprietary App Engine APIs|
|For data persistence, use Datastore
(Python developers can also use
Firestore (requires new project),
or Cloud SQL.
||App Engine Datastore API|
|For image processing,
Otherwise, use Rethumb if you prefer having a free tier.
|App Engine Images API|
|For messaging, use a third-party mail provider such as SendGrid, Mailgun, or Mailjet.||App Engine Mail API|
|For caching app data, create a Memorystore instance and connect it to your app using Serverless VPC Access.||App Engine Memcache API|
|For searchable document indexes, host any full-text search database such as ElasticSearch on Compute Engine and access it from your service.||App Engine Search API|
|For push queues, use
For pull queues, use Pub/Sub.
|App Engine Task Queue API|
|For user authentication, use any HTTP-based authentication system, such as OAuth 2.0, or Firebase Authentication.||App Engine Users API|
|External network access||Full access||Python 2.7, PHP 5.5: Via URL Fetch API
Java 8, Go 1.11: Full access.
|File system access||Read/write access to
||Python 2.7, PHP 5.5: None
Java 8, Go 1.11: Read/write access to
|Language runtime||Unmodified, open source runtime||Modified for App Engine|
|Isolation mechanism||gVisor-based container sandbox||Proprietary|
App Engine first-generation runtime support
There are no plans to deprecate additional App Engine first-generation runtimes at this time. The second-generation runtimes represent the future direction of App Engine; however, developers and customers using the first-generation runtimes will continue to receive support and required system updates.
To learn more about the support plan for first-generation runtimes, see Long-term support for legacy runtimes.
Similarities between first- and second-generation runtimes
- Nearly instantaneous scale-up time to respond to traffic spikes
- Applications are built using the same build process
- Same SLA for GA services
gcloudcommand support and the same GCP console interface
- Free tier
First- to second-generation runtime migration resources
Migration guides are available for each language runtime on the Long-term support page.