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

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

为什么在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服务器。

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



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5629644.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存