加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

python – 为什么使用Nginx运行Flask需要一个WSGI包装器?

发布时间:2020-12-13 21:33:54 所属栏目:Nginx 来源:网络整理
导读:因此,从Python / Flask文档中,他们都建议不要将Flask Web服务器作为生产Web服务器运行,这是有意义的.我的问题是,我能够在Nginx服务器上运行我的Flask应用程序吗?为什么互联网上的所有指南都建议在UWSGI,Tornado或其他一些WSGI服务器上包装Flask? WSGI是什

因此,从Python / Flask文档中,他们都建议不要将Flask Web服务器作为生产Web服务器运行,这是有意义的.我的问题是,我能够在Nginx服务器上运行我的Flask应用程序吗?为什么互联网上的所有指南都建议在UWSGI,Tornado或其他一些WSGI服务器上包装Flask? WSGI是什么意思? Flask WGSI不兼容吗?

我特别失去了因为here,第一反应说:

Apache and Nginx are both HTTP servers.They can serve static files like
(.jpg and .html files) or dynamic pages (like a WordPress blog or forum written in a language like PHP or Python).

但是this帖子说:

Nginx is a web server. It serves static files,however it cannot execute and host
Python application. uWSGI fills that gap.

我的应用程序由服务器(例如:uWSGI)和另一台服务器(例如:Nginx)处理似乎效率低下.

最佳答案
Nginx是一个Web服务器,关注Web服务器的东西,而不是如何运行Python程序. uWSGI是一个应用服务器,知道如何用Python(现在和其他语言)说WSGI. Nginx和uWSGI都使用uWSGI协议,这是一种比UNIX套接字更有效的协议.

Nginx处理来自/响应外部世界的http请求(可能是负载平衡,缓存等). Flask应用程序处理WSGI请求/响应. uWSGI知道如何启动应用程序(可能使用多处理和/或线程)并弥合HTTP和WSGI之间的差距.

这种设置被称为reverse proxy.它允许每个工具做它擅长的事情而不关心过程的其他部分.没有什么特别低效的东西,直到你达到真正的大规模.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读