2 ms·
> using just enough memory to run itself, but doesn't have enough to accept any connections The situation you described is exactly what is prevented with stat
by advisedwang 4y ago
> using just enough memory to run itself, but doesn't have enough to accept any connections
The situation you described is exactly what is prevented with static allocation. It's a very predictable design - it will successfully handle X requests and will fail any requests above that.
An important thing implicit in this design - or at least that I'm assuming - is that there is no queue of requests. Queuing is a major source of problematic behaviour during overload. It's /queuing/ that causes RAM to increase with load (in a system with fixed max of requests being processed). It's /queuing/ that is why latency increase as you near load limits (vs errors).
I'm with you that early errors are better, and the scheme used here achieves that on a request level.