一、名词解释
web服务器:接收HTTP请求并返回数据
Web应用程序:对接收的数据处理
Web框架:方便开发Web应用程序
WSGI:是一种通信协议,它只适用于 Python 语言,其全称为 Web Server Gateway Interface
类比:
Web服务器:门卫
Web应用程序:皇帝
Web框架:辅助皇帝决策的人(内阁)
WSGI:太监宫女
HTTP请求:大臣上报皇帝的事情
二、关系
Nginx=Web服务器
Flask=Web框架
三、Nginx,WSGI,Flask 之间的对话
Nginx:Hey,WSGI,我刚收到了一个请求,我需要你作些准备,然后由Flask来处理这个请求。
WSGI:OK,Nginx。我会设置好环境变量,然后将这个请求传递给Flask处理。
Flask:Thanks WSGI!给我一些时间,我将会把请求的响应返回给你。
WSGI:Alright,那我等你。
Flask:Okay,我完成了,这里是请求的响应结果,请求把结果传递给Nginx。 WSGI:Good job!
Nginx,这里是响应结果,已经按照要求给你传递回来了。
Nginx:Cool,我收到了,我把响应结果返回给客户端。大家合作愉快~
四、常见的Web服务器
Apache、Nginx、Tomcat、IIS
五、常见的开发框架
Python:Django、Flask
PHP:CakePHP、Laravel
Node.js :Express
Ruby:Rails、Sinatra
六、参考