4 ms·
The justification for using LIFO (vs FIFO) queues for requests is interesting: at no/low load it makes no difference, while at high load the requests least like
by dostoevsky 9y ago
The justification for using LIFO (vs FIFO) queues for requests is interesting: at no/low load it makes no difference, while at high load the requests least likely to time out get serviced first.
Is that a common architectural decision in reverse proxies or queuing systems in general?
- zawerf 9y agoIn queuing theory, it's well known that choosing the request with lowest service time first will result in lowest waiting time on average across the requests. This is usually not done because it can starve the larger jobs. https://en.wikipedia.org/wiki/Shortest_job_next https://en.wikipedia.org/wiki/Shortest_job_next https://en.wikipedia.org/wiki/Queueing_theory#Service_disciplines https://en.wikipedia.org/wiki/Queueing_theory#Service_discip...
- dostoevsky 9y agoInteresting. I wonder if that choice would lead to a noticeable impact on perceived latency (from the perspective of a human end-user) under some high-load/pathological scenario.