一、理解http请求的过程
理解wsgi全称,理解这个概念,首先要理解http协议,就是请求从浏览器到服务端经过了哪些步骤:
1、请求内容
2、浏览器将请求内容封装成http.格式的文本发送
3、网络传输,后端服务器收到这个请求以后
4、后端服务器做出响应,生成响应内容
5、后端服务器将响应内容生成html文本格式封装。
6、浏览器接收到响应以后,解http请求,回应给用户。
对于浏览器部分,我们暂时不考虑,浏览器负责内容到html的过渡,我们关心后端服务器。因为后端服务器是我们负责的,假如用户查询,后端服务器做了一系列处理以后,生成了返回的内容,这个时候,就要考虑对返回的内容封装成http协议了。
后端部署考虑到可靠性,健壮性方面,一般是选择用nginx + 后端服务器,nginx会做一些类似负载均衡,安全策略方面的限制。nginx主要做的工作专注于整个http协议,比如http头部的参数修改,对于http协议中内容部分,是采取收到什么,发什么的原则,不会修改http协议中body的部分。
二、WSGI
WSGI:全称是Web Server Gateway Interface,WSGI不是服务器,python模块,框架,API或者任何软件,只是一种规范,描述web server如何与web application通信的规范。server和application的规范在PEP 3333中有具体描述。要实现WSGI协议,必须同时实现web server和web application,当前运行在WSGI协议之上的web框架有Bottle, Flask, Django。
参考链接:
http://ivory.idyll.org/articles/wsgi-intro/what-is-wsgi.html
网友评论