uvicorn 是如何实现多进程同时监听一个 socket 的?如何设置了多个工作进程,http 请求是如何在多个 worker 进程中分配的?是由谁来分配的?是操作系统把 http 请求给 master 进程,再有 master 经常转发给 worker 进程,还是操作系统直接发给 worker 进程?如果是操作系统直接发给 worker 进程,具体又是怎么给的?是操作系统轮训 worker,均匀分配给 worker HTTP 请求?还是操作系统会把每个HTTP 请求都给每个 worker 进程?还是让 worker 进程主动来抢?先到先得?
同样的问题?我也想知道 gunicorn 和 uwsgi 是如何实现的?
这三篇文章可以看看:
https://www.codenong.com/cs10...
https://juejin.cn/post/6987789430232711181
https://cloud.tencent.com/developer/article/1902723