This post was originally posted on JonCloudGeek (free)

A highly-scalable vaccine booking website in the cloud.

In this blog post, I try to explore what it takes to build a highly scalable vaccine booking site using “boring” technologies and good old architecture patterns on Google Cloud. Notably, I will not be using DynamoDB or Bigtable or NoSQL databases of that sort. I think SQL can work here.


I am obviously not privy to all the requirements and constraints of the VaksinCovid website team. Coming up with a blog post like this requires making assumptions. Failure happens to everybody in this industry and we just want to learn from…

Why you should consider using Cloud SQL instead of self-hosting your own database in Compute Engine

This post was originally posted on JonCloudGeek (free)

A managed and orderly Cloud SQL database. (Credits: Unsplash)


In a previous blog post, I explored how you can run a Postgres instance for cheap using Compute Engine in Google Cloud. As non-US users may know, Cloud SQL or most managed database services out there are actually rather expensive.

In this blog post, I want to mention many things left unsaid about compromises you have to make when self-hosting a database in Compute Engine (or any self-managed VM), compared to using a managed database service such as Cloud SQL or its counterparts in other clouds. …

GCP Digest Issue 7 (Aug 31, 2020)

Subscribe at to get this in your inbox!

Google Cloud has launched a new product called Workflows, which allows you to orchestrate and automate Google Cloud and HTTP-based API services with serverless workflows via YAML config, without the need to write glue code. Will it take off?

Other than that, Game Servers, which is a fully-managed version Agones, an open source game server management project that runs on Kubernetes, is now in GA. Furthermore, it is also highlighted that Cloud Logging is becoming more and more enterprise-ready with enhanced logs routing via log sinks.

Also, the much-awaited MySQL 8.0…

GCP Digest Issue 6 (Aug 17, 2020)

Subscribe at to get this in your inbox!

GCP Digest was supposed to go out last week but I was too tired after work to make that happen. I don’t think anyone noticed, and it turned out there was nothing too groundbreaking going on these few weeks given the US summer break and the already “ground shattering” stuff announced during the first few weeks of Next OnAir. I might apply this “cheat week” strategy now and then, is anyone complaining? …

GCP Digest Issue 5 (July 27, 2020)

Subscribe at to get this in your inbox!

The main highlights coming out of the first week of Next OnAir moves Google Cloud into very strategic enterprise positions albeit with offerings that differ greatly from the approach taken by other clouds (or no equivalent in other clouds).

First, the ability to use BigQuery while keeping your data in other clouds with BigQuery Omni. Second, Confidential VMs that allow your data to remain encrypted in-memory, and only decrypted right before hitting the CPU. Third, Assured Workloads for Government to use public cloud without a dedicated government cloud data center.


GCP Digest Issue 4 (July 13, 2020)

Subscribe at to get this in your inbox!

The amount of news coming out from Google Cloud in the past two weeks was at a dizzying pace. Writing this newsletter helps me to come to terms with it, and hopefully for you too.

To me, the biggest highlight would be that Cloud SQL for PostgreSQL finally lands support for point-in-time recovery (without fanfare). Also, there’s the release of the Google Cloud AI Adoption Framework to help your organization on your AI adoption journey. And Sheets is really getting some really intelligent and serious chops with Connected Sheets, Sheets Smart…

GCP Digest Issue 3 (June 29, 2020)

I probably jumped the gun a bit too early in the previous newsletter, announcing the Jakarta region. The Jakarta region was officially launched last Wednesday on June 24! But you could have started using it much earlier :)

In this issue, we highlight committed use discounts for Cloud SQL, as well as the announcement of Open Match, an open source game matchmaking platform (by Google Cloud and Unity).

Incidentally, I finally launched my first GCP course, Deploying Node.js on GCP! It is available on Gumroad or Udemy. Also available as a bundle with my book, but Gumroad only.

Happy reading!

GCP Digest Issue 2 (June 15, 2020)

This story was originally published as a newsletter, and archived at

It’s been a turbulent two weeks. I hope that everyone is doing well.

A great deal has also happened in the past two weeks in GCP. Jakarta region has been launched. BigQuery gets table-level ACLs. Cross-region replication is now a thing in Cloud SQL. Pub/Sub offers message filtering.

In my own projects, I have been playing around with Cloud Tasks as my task queue manager. I wrote a blog post to explain all that I have learnt: Managing background jobs with Cloud Tasks

Happy reading!
- Jonathan

Jakarta comes online 🎉


Use Cloud Tasks to manage your background jobs at scale, without drowning your worker.

This post was originally posted on JonCloudGeek (free)

A queue
A queue
A queue.

In this blog post, I will give an overview of Cloud Tasks with the aim of enabling you to start using it in your own applications.


Cloud Tasks is a fully managed service that allows you to execute, dispatch, and deliver a large number of distributed tasks. Use Cloud Tasks to perform work asynchronously outside of a user or service-to-service request cycle.

Well, that’s a paraphrase of the documentation intro. What exactly is Cloud Tasks? …

GCP Digest Issue 1 (June 1, 2020)

This story was originally published as a newsletter, and archived at

Hello and welcome to the first issue of GCP Digest! GCP Digest tries to give you a gist of what happened in Google Cloud in the past two weeks. You are receiving this most likely because you downloaded my free ebooks on Gumroad (which are no longer free). A big thank you to those who paid for the books!

I recognize that most of you didn’t sign up for this email explicitly, so feel free to unsubscribe at the bottom, no hard feelings, but also hope you don’t…

Jonathan ES Lin

Cloud Architect | Cloud Geek at | Maker, | UC Berkeley alum | Sinner saved by Grace

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store