3 ms·
Exactly. You can run almost for free on Google if you use things like cloudrun and you don't have a lot of traffic. We developed against that for over a year wi
by jillesvangurp 2y ago
Exactly. You can run almost for free on Google if you use things like cloudrun and you don't have a lot of traffic. We developed against that for over a year without ever hitting their freemium threshold. This was just a simple development server of course. We transitioned that to a bit more flexible traditional setup with some vms and a load balancer. You can just start a vm with a docker container in Google cloud so it's stupidly easy to deploy dockerized software and do things like rolling updates. With AWS you need things like ECS and some other cruft. Also not the end of the world. But more work.
The mistake most companies and developers make is mapping their organization structure to their deployment architecture. And then over provisioning everything. Kubernetes is the goto solution for companies like that. We spend less on our cloud bills than it costs to spin up even a simple Kubernetes cluster that does basically nothing. It doesn't solve a problem we have because we have a monolith. All I need is two cheap vms and a loadbalancer. If it gets busy, I'll add vms.
There's some other stuff we need, of course. The most expensive thing is actually managed search and databases clusters. They are nice but also pricey.
But from a cost perspective the whole point for me is actually minimizing my time investment. A managed database means I don't need to obsess about uptime, backups, and other things you would normally pay some team to obsess about 24x7. I don't have that and I can actually go on vacation and it's fine.
Of course all this stuff is way overpriced. You get the equivalent of a raspberry pi worth of compute for a monthly price that would allow you to buy several of those. Cloud providers actually put multiple customers on their hardware for the cheaper vms. So, these things are basically paying for their own cost pretty much instantly. When you use a managed database, it runs on shared infrastructure that minimizes resource usage. So why is that more expensive than a non managed one that has more idle resource use? Convenience. It doesn't actually cost them more to manage it. But it's more convenient for you. So they just charge you more for less.
Cloud pricing bears no relationship to actual cost. Which is weird. There should be way more competition on price. But it seems that there just isn't. Of course, people just mindlessly buy AWS because they heard it's good. That's why Amazon is so rich. The retail business is a side hustle for them at this point. And you can get some amazing deals from smaller providers. Hetzner gets mentioned a lot and they are pretty aggressive with their pricing. But it's less convenient.