Hacker News new | ask | show | jobs
by ebbp 946 days ago
Generally these limits exist so customers don’t accidentally spend more than they intend to — e.g. implementing a sort of infinite loop where Lambdas call each other constantly. Sounds implausible but I’ve seen that more than once!
3 comments

IMO that's not why they _really_ do it. They have limits on everything because even at their scale they can't instantly accommodate your needs to suddenly scale or they need to prevent "noisy neighbor" situations where your sudden excessive usage impacts others' workloads. They still have to do relatively short term capacity planning to accommodate you. Like, I work for only a medium-large sized company and AWS has quoted us lead times of _weeks_ to make the instances we need for a workload available. We only needed 200-300 EC2 instances and they weren't even super unusual types. I think their infinite scaling on a dime claims are pure marketing jibber jabber.
> Sounds implausible but I’ve seen that more than once!

The textbook example of this going wrong is a lambda that is invoked on uploading to S3 that writes the result to S3. There's even an AWS article on it - [0]

[0] https://aws.amazon.com/blogs/compute/avoiding-recursive-invo...

We actually got an email from AWS recently at work that said “hey! Your lambda writes to a queue that invokes the same lambda, that seems wack”. We need it that way, but it’s enough of a problem that they built a way to detect it automatically.
I might believe this if AWS allowed customers to specify their own self-imposed billing limit. Do they have that feature yet?