GCP Learning Series _App Engine Part 1
Overview
This App Engine series comprise of three parts
- Overview of App Engine (Part 1 )
- Cloud SDK Setup , Configuring and Authorizing Docker to push image to Google Container Registry ( gcr ) ( Part 2 )
- Deploying the image from gcr into App Engine Flexible environment (Part 3 )
App Engine is a Platform-as-a-Service. It means that you simply deploy your code, and the platform does everything else for you. For example, if your app becomes very successful, App Engine will automatically create more instances to handle the increased volume. ( Scaling support )
Note : It’s a PaaS (service) like Elastic Beanstalk in AWS Cloud
Compute Choices
Compute Engine ( IaaS ) : To create VMs and have more control ( Lift and Swift )
GKE ( CaaS ) : To deploy images into container and have control in managing the cluster ( Container Clusters )
App Engine ( PaaS ) : Managed Service by GCP
Cloud Functions ( FaaS) : Serverless , Event Driven Architecture
Managed Service (Serverless)
Build and Deploy Apps quickly, built-in support for load balancing and autoscaling
Pay As You Go
Focus on Code, as App Engine is a managed service from GCP, which will take care of provisioning Infra Structure
Choose between Standard and Flexible environment
Traffic Splitting/Versioning
App Engine Variance
App Engine comes in two flavours. One is Standard Environment and another one is Flexible Environment
App Engine Standard Environment
Google App Engine (Standard) is like a read-only sandboxed folder where you upload code to execute from and don’t worry about the rest (yes: read-only — there are a fixed set of libraries installed for you and you cannot deploy 3rd party libraries at will). DNS / Sub-domains etc is so much easier to map.
Pros:
Instance can be startup in milliseconds.
It provides Manual, basic and automatic scaling.
Cons:
Lacks support for 3rd Party Library
Minimal Language Support
Supported Runtimes
App Engine Flexible Environment
Google App Engine (Flexible) is in fact like a whole file-system (not just a locked down folder), where you have more power than the Standard engine, e.g. you have read/write permissions, (but less compared to a Compute Engine). In GAE standard you have a fixed set of libraries installed for you and you cannot deploy 3rd party libraries at will. In the Flexible environment you can install whatever library your app depends on, including custom build environments (such as Python 3).
Pros:
Customizable Stack
Support for 3rd library
Cons:
Can take minutes to start
Need to have one instance running all time, can not be bring down to zero. It might cost more compared to Standard environment
Supported Runtimes
Note : Both Standard and Flexible environment runs on Container based environment, while Standard container is maintained by Google Proprietary and Flexible container relies on Docker one.
GCP Console
Login to GCP Console, click on Hamburger Menu and navigate to Serverless section and click on App Engine. You will be redirected to AppEngine dashboard.
to be continued … ( Cloud SDK Installation , GCloud Authentication, Container Registry) . Stay Tuned !
Happy Learning !
Bharathy Poovalingam
#GCP #Serverless #AppEngine #Learning
Related Course:
Architecting Scalable Web Applications using Google App Engine ( Janani Ravi / Pluralsight )