gunicorn 是 WSGI。

因其中一个项目说是要用 gunicorn ,然后就顺便了解下 gunicorn 这个东西是干什么的。

要想了解 gunicorn ,那么就需要知道 WSGI 是什么东西。

开始都不知道 WSGI 是什么概念,还以为是个新东西。

其实就是 Python 实现的网络接口,Python 的反向代理。

Web 服务器网关接口(Python Web Server Gateway Interface,缩写为WSGI)是为Python语言定义的Web服务器和Web应用程序或框架之间的一种简单而通用的接口。自从WSGI被开发出来以后,许多其它语言中也出现了类似接口。

以前,如何选择合适的Web应用程序框架成为困扰Python初学者的一个问题,这是因为,一般而言,Web应用框架的选择将限制可用的Web服务器的选择,反之亦然。

那时的Python应用程序通常是为CGI,FastCGI,mod_python中的一个而设计,甚至是为特定Web服务器的自定义的API接口而设计的。

Python Web服务器网关接口_服务器

WSGI(有时发音作’wiz-gee’)是作为Web服务器与Web应用程序或应用框架之间的一种低级别的接口,以提升可移植Web应用开发的共同点。WSGI是基于现存的CGI标准而设计的。

Gunicorn是基于unix系统,被广泛应用的高性能的Python WSGI HTTP Server。 用来解析HTTP请求的网关服务

它通常是在进行反向代理(如nginx),或者进行负载均衡(如AWS ELB)和一个web 应用(比如Django 或者Flask)之间。