4 ms·
Well you do understand it, enough to work out how to live without it. :P That said there are some key things a scale to zero serverless app has that solution d
by jpgvm 3y ago
Well you do understand it, enough to work out how to live without it. :P
That said there are some key things a scale to zero serverless app has that solution does not.
1. Isolation. Your infrequent function may very well be infrequent but it's execution could then impede other code executing on that box (if it's computationally or I/O intensive for instance), or expose other code on the box to security vulnerabilities.
2. Independence. Similar to above but more addressing logical segregation. Once you are sharing a server or say piggybacking on a monolith as an extra endpoint there is now a lot of conflated concerns. For instance auto-scaling algorithms etc may not work well with the sort of intermittent/infrequent execution and it would be much better living in it's own context for that reason. Other things that end up all jumbled up: Cost accounting, IaC/deployment/CI/CD, ownership, observability, etc.
Generally all of this still isn't enough to justify serverless but sometimes it could be... but in most of those cases just eating the cost of 1 replica and autoscaling on k8s is usually better.
- AlienRobot 3y agoThanks for the explanation, I really appreciate it!