Which compute service should you adopt?

Abhishek ghosh
3 min readJun 15, 2020

--

Google Compute Engine

Google Compute Engine (GCE) is an Infrastructure as a Service (IaaS) offering that allows clients to run workloads on Google’s physical hardware. Google Compute Engine provides a scalable number of virtual machines (VMs) to serve as large compute clusters for that purpose. GCE can be managed through a RESTful APIs, command line interface (CLI) or Web console.

These VMs boot quickly, come with persistent disk storage, and deliver consistent performance. The machines are available in many configurations including predefined sizes and can also be created with Custom Machine Types optimized for your specific needs.

Google Compute Engine (GCE) has a rich set of features. You may want to dive into some of these :

Google Kubernetes Engine (GKE)

Google Kubernetes Engine (GKE) is a management and orchestration system for Docker container and container clusters that run within Google’s public cloud services. Google Kubernetes Engine is based on Kubernetes, Google’s open source container management system.

Features of GKE:

· Fully Managed

· GKE uses a Container-Optimized OS

· Auto Upgrade

· Auto Repair

· Cluster Scaling

· Seamless Integration

· Identity & Access Management

· Integrated Logging & Monitoring using Stackdriver

· Integrated Networking using Google VPC

Google App Engine

App Engine is a fully managed, serverless platform for developing and hosting web applications at scale. You can choose from several popular languages, libraries, and frameworks to develop your apps, then let App Engine take care of provisioning servers and scaling your app instances based on demand.

You can run your applications in App Engine using the

· flexible environment

· standard environment.

You can also choose to simultaneously use both environments for your application and allow your services to take advantage of each environment’s individual benefits.

Comparing high-level features

Google Cloud Run-Bringing serverless to containers

The Cloud Run (fully managed) platform allows you to deploy stateless containers without having to worry about the underlying infrastructure. Your workloads are automatically scaled up or down to zero depending on the traffic to your app. You only pay when your app is running, billed to the nearest 100 milliseconds. While it may look similar to existing services of public cloud, the feature set makes Cloud Run unique:

  • Docker as a deployment package enables using any language, runtime, framework, or library that can respond to an HTTP request.
  • Automatic scaling, including scale to zero, means you pay for what you consume with no fixed cost and no management overhead.
  • HTTP load-balancing out of the box simplifies the usage.

Cloud Function

Google Cloud Functions is a serverless execution environment for building and connecting cloud services. With Cloud Functions you write simple, single-purpose functions that are attached to events emitted from your cloud infrastructure and services. Your function is triggered when an event being watched is fired. Your code executes in a fully managed environment. There is no need to provision any infrastructure or worry about managing any servers.

Cloud Functions can be written using JavaScript, Python 3, or Go runtimes on Google Cloud Platform. You can take your function and run it in any standard Node.js (Node.js 6, 8 or 10), Python 3 (Python 3.7) or Go (Go 1.11 or Go 1.13) environment, which makes both portability and local testing a breeze.

--

--