您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

为什么在Nginx上运行Flask需要WSGI包装器?

为什么在Nginx上运行Flask需要WSGI包装器?

Nginx一个Web服务器,它与Web服务器有关,而不与如何运行Python程序有关。uWSGI是一个应用程序服务器,并且知道如何使用Python(和现在的其他语言)说WSGI。Nginx和uWSGI都使用uWSGI协议,该协议是UNIX套接字上的一种有效协议。

Nginx处理来自/响应外界的http请求(可能是负载平衡,缓存等)。您的Flask应用程序处理WSGI请求/响应。uWSGI知道如何启动您的应用程序(可能使用多处理和/或线程化)以及如何弥合HTTP和WSGI之间的鸿沟。

Nginx之外还有其他HTTP服务器,而uWSGI之外还有其他WSGI服务器,但是它们都使用相同的工作流程:HTTP服务器传递给WSGI服务器,该WSGI服务器管理您的应用程序过程,然后传递回HTTP服务器。

此设置称为反向代理。它使每个工具都能做自己擅长的事情,而不必担心过程的其他部分。在达到真正的大规模 之前,没有什么特别低效的方法

Python 2022/1/1 18:44:34 有288人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶