GCP Serverless Compute Options Overview

#Google Cloud #Serverless #Microservices #Cloud Run #Cloud Functions #App Engine

Intro

This is a brief overview of the Serverless Compute Options in GCP.

After reading this post, I hope you are:

  1. Familiar with the main options (at a high-level)
  2. Understand some main use-cases for each option
  3. Have a limited understanding of what it looks like to work with a service in each product

The google docs on these subjects are really helpful… I strongly recommend reading through them.

Serverless Compute Options

Here are the primary compute options in GCP:

Visual, Google Compute Options

source

For this discussion, we’ll focus on the three serverless options:

  1. Cloud Run
  2. App Engine
  3. Cloud Functions

Overview

ProductDocsDescriptionCool FeaturesUse-Cases
Cloud RundocsRuns containerized apps
  • Split http traffic btw. diff versions of an app for A/B Tesing
  • Uses knative, allowing portability
  • Can be triggered by events
  • Websites/APIs
  • Cronjobs
App EnginedocsRun http services
  • Split http traffic btw. diff versions of an app for A/B Tesing
  • Easy config. using app.yaml
  • Flexible structure allowing services in different languages in the same app
  • Server-rendered websites/APIs
Cloud FunctionsdocsRun event-driven functions