参考文献:https://zhuanlan.zhihu.com/p/68676316?utm_source=wechat_session&utm_medium=social&utm_oi=847704103630028800
https://www.zhihu.com/question/342967945
https://www.zhihu.com/question/297267614
Introduction
我们在使用Flask进行Web开发的过程中,开发环境下一般用Web框架自带的Web Server进行调试等开发工作,但是如果要将整个Web项目部署到生产环境下,往往会采用如下方案:
Nginx + WSGI Server(uWSGI、Gunicorn) + Flask APP
这篇文章将会讨论,为什么我们要用Nginx和WSGI Server来进行Flask App的部署。
什么是WSGI
WSGI是 Web Server Gateway Interface 的缩写。
它是 Python应用程序(application)或框架(如 Django)和 Web服务器之间的一种接口,已经被广泛接受,这个接口定义了web server如何转发请求到Python写的应用中。就像Java 的servlet API,这样只要实现接口的web server都可以调用遵守此接口的任何Python应用。
它是一种协议,一种规范,其是在 PEP 333提出的,并在 PEP 3333 进