Huxley - Cloud Webapp
Name: Huxley
Function: Personal Website
Specs:
Firebase Hosting
Cloud Run
Go Webapp
There was once a time when this esteemed web page was proudly featured at the top of a Google search for “Matt Quelch”, alas those days are long gone, and indeed after a recent check I'm no longer even on the first page. Shockingly enough there appear to be at least four Matt Quelch characters around (I'm the original though, I assure you!) and Google is now preferring to promote Linkedin pages, newspaper articles and other such trite and boring pages rather than my own bright and insightful prose.
So it was that I decided to see if I can at least bump us back up to the first page of Google. I know Google's Page Rank algorithm puts a lot of weight on speed and uptime of a website, two areas where my ancient and creaking RaspberryPi on my home broadband connection was letting down the side. So I decided to launch quelch.me.uk up, up and away into the Cloud. Having used GXP for my previous project backing up alexandria I decided to stick with it and see what options would make the most sense to move quelch.me.uk up to GCP too.
Having spent little to nothing on hosting costs apart from an inital outlay of something like £30 on a RaspberryPi many moons ago, I didn't really want to spend too much on this, but appreciated I'm going to have to pay something here. I quickly discounted a Compute Engine VM then looked at containers, going with a little container in Compute Engine wouldn't make sense financially even. Then I read about Google's Serverless options and specifically Cloud Run.
With Cloud Run we can have a container running without needing to worry about the who, what, why, where, when, just run the container which sounds great, but also isn't super cheap. Until I read then since you only pay for when the container is running, you can have it shutdown after use, so we get a visitor, the container starts up, presents the content, stays alive for a bit while the user is clicking around then shuts down, massively reducing the bills! Perfect! Only problem is the site runs on PHP currently and starting a container and serving a PHP site will take some time, impacting our GPR which was the point of the project. It seems that Go is much much faster than PHP, so all we have to do is re-engineer the site in Go and then we can use Cloud Run to host the site just when it's being used. Nice!