I decided while I was tinkering with Azure, I’d give Google’s Cloud Platform a test, too, and see which is best for what I need – simple, easy hosting for a low price, with some room to play and grow (for a similarly low price).
Looking over Google’s pricing, it seems like I should be able to host my blog for pennies since it’s so low traffic. The big difference between Azure and GCP seems to be how they charge. Google charges based on use – their billing model indicates that they charge for a minimum of 1 minute, and after that charge per second of use. At worst, it looks like I’d pay $15/month to use my blog VM for the entire month; which is extremely unlikely. Azure, on the other hand, charges for the application, so regardless of how much an application is used, you pay as if it ran the entire month. Regardless, Google provides a nice $300 credit for the first 12 months, so I can figure things out as I go. (Azure provides a $200 credit for the first month, so Google’s credit is much nicer here.)
I’ll say that Google’s management site is a lot prettier than Azure’s (more modern-looking with Google’s Material Design), but basically has all the same stuff. Like Azure, they had a WordPress template I could install and start using right away, and I migrated my content across to it. Setting up a redirect seems to work as well, and unlike Azure, GCP doesn’t appear to have any limitations on what projects can be given a custom domain. If that’s the case, I’ll likely be moving entirely to Google soon, as I have several small projects I’d like to give a custom address under my domain name. On Azure, I’d be paying about $10/month per project – whether that project is running or not – just to be able to give that project a nice URL.
The only issue I’ve had with Azure was with their pricing as I ran my blog and learned more about how they charge. Since they charge per resource (application, database, storage, etc.), you have to pay whether you use it or not. Google, on the other hand, appears to only charge based on use. If your application is bursty like my blog (only needs to run when I’m actually working on it, or when people are reading it), Google seems like the superior platform cost-wise. In addition, Azure forcing me to use a paid-tier just to give my application a nice URL on my domain is difficult to accept. With Google, my basic-tier VM has an IP address I can set up with an A record and everything just works.
It looks like Google has just as much capacity to scale as well. I can upgrade or downgrade my blog VM by stopping it and changing the machine type.
My assumption is it has to do with how the “clouds” are handled between Azure and GCP. With Azure, it seems like you’re dedicating specific hardware resources to an application (even in their “shared” tiers), while with GCP you’re making use of a big “cloud” of vCPUs and memory. If that’s the case, it seems like GCP is more like how I’d expect “cloud” hardware to work. It makes Azure feel a bit old-school… Though this is still all automatic hardware management and virtualization distributed across multiple regions, so they’re both very state-of-the-art in that regard.
I’ll post again once I’ve had more chance to compare the costs between GCP and Azure. Right now, GCP seems like it’s going to be the winner. I’ve only been with Azure a few days, but I’ve already racked up $12 in costs by running application services I wasn’t using (under the false impression that I wouldn’t pay if I wasn’t using them), and using a MySQL database resource for my blog (which could have been run in the application service for no extra charge). It’s only been a day with GCP, but my total cost so far is 20 cents. If the trend continues, I’m still only looking at maybe $6 with GCP, which would be on the high end since I’m spending a lot more time on my blog with all this tinkering I’m doing…