3 ms·
There is a lot of literature on the subject if you want more pragmatic notes. You read Rachel’s blog not only for the tech experience, but for her storytelling
by DevKoala 7y ago
There is a lot of literature on the subject if you want more pragmatic notes. You read Rachel’s blog not only for the tech experience, but for her storytelling skills.
I particularly enjoy her blog.
- CameronNemo 7y agoShe linked none of that literature, and neither did you.
- kragen 7y agoShe mentioned a hell of a lot of googlable terms: epoll_wait, Apache thundering herd, EPOLLONESHOT, EAGAIN, idempotent requests, userspace threads, copy-on-write, queue depth determination, selective LIFO, strongly typed RPC, ...
- bshanks 7y agoBy the way, what is "selective LIFO"? I googled it and couldn't find it. Also, I couldn't find anything on queue depth determination.
- kragen 7y agoIt's a new term to me, but I think “selective LIFO” means switching to LIFO scheduling under overload conditions as a load-shedding measure: https://landing.google.com/sre/sre-book/chapters/addressing-cascading-failures/ https://landing.google.com/sre/sre-book/chapters/addressing-... Presumably “queue depth determination”, another new term for me, means determining how big the queue of pending requests for a service is allowed to get before further requests are refused (another load shedding measure) rather than being enqueued.
- DevKoala 7y agoThis might help you, but honestly, if you want literature that will help you arrive at the same conclusions, you should read docs. https://medium.com/@genchilu/brief-introduction-about-the-types-of-worker-in-gunicorn-and-respective-suitable-scenario-67b0c0e7bd62 https://medium.com/@genchilu/brief-introduction-about-the-ty... The problem is that a solution for I/O bound workloads has become generalized as the solution for all concurrency needs when in reality, that’s just half the picture.