我相信 nginx 是基于事件的,因此只有 1 个工作人员可以接受多个请求,例如 100 个请求/秒。然后这些请求将被传递给 uwsgi 进行处理,然后一旦完成,它将结果推送回 nginx,nginx 会将结果推送给执行 http 请求的用户。
假设我的 uwsgi 只使用 1 个 worker(无线程),uwsgi 会一一处理这 100 个请求吗?所以它需要做 100 个进程来完成整个请求。现在,如果我打算使用长轮询来在我的前端快速更新会发生什么facebook、gmail 如何发送实时通知?
我相信它会迫使 uwsgi 处理单个请求(这是长轮询过程)并暂停所有其他请求,从而导致整个系统崩溃。
我对 uwsgi 的工作方式是否有任何误解,或者是否有任何其他解决方案可以实现长轮询?
谢谢你