Not necessarily. A cloud provider could retroactively cap charges at the hard limits, but only cut access to resources asynchronously. That's effective what happens when you complain now with AWS.
If AWS wanted to, they could absolutely implement a hard cap. It's not like letting some services run for a few hours until billing catches up costs them a lot of money.
What is true--not necessarily in order is:
- I suspect AWS in aggregate probably makes a fair bit of money on overages that a user eats but would have had a hard circuit in place if they could have, and
- Even reasonably designed hard circuit breakers (e.g. we cut off access to your stateful data unless you pay your bill but we won't delete it for 30 days) are still giving developers a potentially well-hidden foot-gun for a production environment that management might not actually want.
> Just like in real life, if you run out of money you have to stop doing things
In real life when you hit your card's limit, your transactions get declined. Straight away.
I had this last month in a supermarket after my (personal) checking account didn't have enough money to cover my purchase, I'd completely forgotten to transfer money from my business account.
My bank wasn't prepared to let my account go overdrawn, not even by the equivalent of $20, which is absolutely their right.
Amazon, OTOH, benefits in lots of ways by not implementing this mechanism.
> In real life when you hit your card's limit, your transactions get declined. Straight away.
Except for when it doesn't. I've got two primary current accounts, one with a "legacy" bank in the UK and one with a modern bank. The legacy bank is happy to let me go into an unplanned overdraft, and charge me for the privilege of doing so.
For the companies I've worked for, having HARD limits on devs would put the C-levels minds at ease.
At this moment, any dev with AWS keys has an unlimited month-per-month credit line that the company is on the hook for paying. And at best is the hope and prayer that the billing notifications aren't utter shit.