uWSGI服务器介绍
1、uWSGI
uWSGI是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议。Nginx中HttpUwsgiModule的作
用是与uWSGI服务器进行交换。
要注意 WSGI / uwsgi / uWSGI 这三个概念的区分。
WSGI是一种通信协议,Flask,webpy,Django、CherryPy等等都自带WSGI,不过性能都不好。
Web服务器网关接口(Python Web Server Gateway Interface,缩写为WSGI)
1、WSGI是一套接口标准协议
UWSGI同WSGI一样是一种通信协议。
而uWSGI是实现了uwsgi和WSGI两种协议的Web服务器。
为什么有了uWSGI为什么还需要nginx?因为nginx具备优秀的静态内容处理能力,然后将动态内容转发
给uWSGI服务器,这样可以达到很好的客户端响应。
统一标准。
说到这,我们基本理清了 uWSGI 在 web服务器与 web框架之间作用:uWSGI 就像一条纽带,将 web服
务器与 web框架连接起来。Nginx 属于一种高并发能力 web服务器,Flask属于一种 web框架,因此,
uWSGI 与 Nginx、Flask 的作用就不明而喻了。
Nginx,uWSGI,Flask 之间的对话
Nginx:Hey,uWSGI,我刚收到了一个请求,我需要你作些准备,然后由Flask来处理这个请求。
uWSGI:OK,Nginx。我会设置好环境变量,然后将这个请求传递给Flask处理。
Flask:Thanks uWSGI!给我一些时间,我将会把请求的响应返回给你。
uWSGI:Alright,那我等你。
Flask:Okay,我完成了,这里是请求的响应结果,请求把结果传递给Nginx。
uWSGI:Good job!Nginx,这里是响应结果,已经按照要求给你传递回来了。