我们正在使用 uwsgi 来为 nginx 后面的 python 应用程序提供服务。
我是否可以希望同时服务的客户端连接的理论最大值等于 uwsgi 进程数 * 线程数?
我们正在使用服务器发送的事件,因此连接会保持很长时间。
答案1
是的,每个线程都可以管理一个请求,所以如果您有 3 个进程和 5 个线程,您就可以管理 15 个并发请求。
答案2
当在 uWSGI 后面托管 python 时,它只能运行与进程数一样多的同时请求。如果您有更多线程,uwsgi 将接收更多 http 请求,但会将它们保留,直到某个进程从上一个请求中释放出来。
可以通过执行请求来检查这一点,time.sleep(300)
然后从终端生成curl
命令,您将看到我上面描述的内容。