-
Overview
- No access to local storage
- Access to remote storage via APIs
- Applications can call Google Cloud services
- Provides a number of built in functions such as task queues
- Applications can utilize external cloud storage and cloud memcache
- Applications can make calls to a variety of services using dedicated APIs
- App Engine provides built-in services that many web applications need
- Developers code their applications to take advantage of the services App Engine provides
- App Engine scales applications automatically based on incoming traffic
- App Engine users only pay for the resources used by their applications
- With App Engine, there are no servers to provision or maintain
- App Engine is especially suited for applications where the workload is highly variable or unpredictable like web applications and mobile backend
- App Engine manages Compute Engine machines, checking the health of instances and healing as necessary
- App Engine enables users can select a geographical region for their applications
- With App Engine, critical backward compatible updates to operating systems are automatically applied
- App Engine flexible environment applications have access to App Engine services such as data store, memcached, task queues
- App Engine supports application development in several languages
- App Engine runtimes include libraries that support App Engine APIs
- App Engine Standard is a software construct that is independent of the underlying hardware, operating system, or physical location of servers
- App Engine SDK is used to develop and deploy App Engine applications from a local environment
- App Engine users develop applications and run test versions locally using the App Engine SDK
- Multiple App Engine applications can runs in a GCP project
- App Engine automatically provisions server instances, scales and load balances them
- App Engine applications can make calls to a variety of services using dedicated APIs
- Abstracts the underlying infrastructure in favour of developer friendliness
- Runs Docker containers in virtual machines under the hood, while providing convenient models of deployment and management
- Simplified the process of deploying code into a production scale environment
- App Engine takes care of capturing logs, scaling, versioned upgrades, and traffic splitting
-
Services
- App Engine applications can be implemented in multiple services
- Multiple projects can be used to isolate App Engine services
- Each App Engine service can have multiple versions deployed simultaneously
- More than one App Engine service can be deployed into a project
- App Engine code can be isolated based on versions, services and projects
- App Engine services in a single project share some resources such as datastore, memcache, and task queues
- App Engine services in separate projects are completely isolated.
- Different App Engine IAM roles can be assigned at the project, but not the service level
- App Engine services in the same project are isolated in some ways, and share certain resources
- Code in an App Engine service cannot directly invoke code in another service
- Each App Engine service can be written in a different language
- App Engine services can be auto scaled and load balanced independently
-
Standard
- Fully managed environment
- Scales from 0 to thousands of instances
-
Flexible
- Programming language of choice
- Docker container application
- No need to manage platform
- Access to containers via SSH