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