This same argument applies to most cloud hosting, non-cloud (or less cloudy, Hetzner is a little cloudy) will always be cheaper because the service is more basic in a number of ways.
Fly’s pitch is not just on demand scalable compute, but also that compute being close to the edge, and with “ops-less” deployments. All of those are factors you pay for.
You could pay a little less with a big cloud provider’s serverless platform, a bit less again with regular cloud VMs, a lot less with colo hardware, and a ton less running your own DC (at scale). Obviously not all of these work for all businesses, but saying Hetzner is cheaper than Fly misses the point of those two services on the spectrum of service levels.
This has me so confused. Should the cloud abstractions not clearly make the service more optimizable at scale and thus cheaper to offer? Sandboxing things, limiting options, not having to deal with users wanting to provision VMs and do all kinds of unexpected stuff? The marginal cost of the beautiful software to make all of that happen smoothly, and all the dx it affords, that will just go towards 0, no?
I understand that people ask for what they can get away with. But does the market fail or am I missing a piece of the cost/price puzzle?
- Things change and break. You are paying for people to fix that for you at 2 AM, and to keep up with industry developments and best practices and make those decisions for you.
- Legal risk and compliance requirements change. You are paying for them to keep up with those for you.
- Overhead imposed by multi-tenancy. Security boundaries, control planes, etc. These are fixed operational costs caused by the abstraction.
You're not paying for just an abstraction, you're paying for the things the abstraction enables. It's also not always what you need. But it often makes good business sense.
At one side, the big cloud providers have their very fair profit margins. But I've always assumed that comes mostly from that they can, and do, charge extra for the beautiful software (not seldomly through ridiculous egress bandwidth pricing).
I'm skeptical of how much flexibility and optimisation the big cloud providers really get compared to a very large VPS provider?
All the compute products (different form of container hosting, serverless) are essentially still priced at CPU+RAM + a premium. Some additional abstraction for nouveau databases ("capacity" or "billing" units). Many of the highly abstracted offerings also have the scale-to-zero concept, while the provider still have to have physical capacity ready (to some extent).
Sure, you can probably crank out some percentage more utilisation, but that doesn't really matter for the 100+% price-add on the market bears.
But I of course have no data to back up my claims, just speculation.
On a systems engineering level, keeping a system in a state of low entropy for a prolonged period of time will always be harder than a state of higher entropy. In practice, this comes down to more complexity in the software involved, and the people required to make the machine go boop will inevitably higher, since you need to maintain the servers and the complicated stack on them.
The tooling for managing the "lower" layers is progressively worse / slower / harder the closer to the metal you get,
so you usually are paying a heavy premium for convenience / DX.
Only very specific serverless products where the provider can bin-pack you with other tenants allow them to possibly offer lower prices.
The sandboxing (by way of example) is a hardware affordance, not a software feature. In order to hardware virtualize every instance running on Fly.io, we have to provision hardware globally; we can't run customer jobs in namespaced userland containers under a shared kernel on cloud-provisioned hosts.
IMO it’s rather sad that virtualization with native-like performance isn’t available on ordinary cloud instances. Getting nested virt or some kind of hypervisor-assisted partitioning working is hard but far from insurmountable.
For a lot of people (most...?), Hetzner gives them exactly what they're looking for at an excellent price point. As an ecosystem, we never really moved past VMs, we just went up the stack more.
I'm not missing the point of the service, I'm against the idea of infrastructure being an 84% margin business. But I guess this is what the VCs demand and some are willing to pay it.
Fly’s pitch is not just on demand scalable compute, but also that compute being close to the edge, and with “ops-less” deployments. All of those are factors you pay for.
You could pay a little less with a big cloud provider’s serverless platform, a bit less again with regular cloud VMs, a lot less with colo hardware, and a ton less running your own DC (at scale). Obviously not all of these work for all businesses, but saying Hetzner is cheaper than Fly misses the point of those two services on the spectrum of service levels.