参考:Difference between WSGI and ASGI ?
背景
2003年之前,Python出了一系列web应用框架Zope, Quixote, Webware, SkunkWeb…,而这些框架和可用的web服务器是绑在一起的,耦合太紧。
架构问题没有什么是加一层不能解决的。于是WSGI出现了。
WSGI
wsgi(Web Server Gateway Interface)web服务网关接口,能实现服务代码和应用代码分离:
wsgi接口需要两个参数:
- environ:描述请求以及服务器运行的环境
- start_response:同步可调用接口,用来产生body
wsgi一次接收一次请求,产生一次结果。
ASGI
asgi ( Asynchronous Server Gateway Interface)异步服务网关接口,wsgi的升级版,默认接口是异步调用的。
asgi接口需要三个