Python:使用gevent需要前端服务器/反向代理吗?
在一个相关的问题中,我想弄清楚一个Python网页应用是如何从头到尾“连接起来”的。我一直在假设需要用到Apache、lighttpd或nginx这样的服务器,并且还得有一个WSGI模块。(我们假设我用CDN来提供静态内容。)
有没有可能跳过WSGI,直接用gevent库来为客户端提供服务呢?
2 个回答
0
你可以这样做,但对于一些不太简单的应用来说,这样做可能不太合适,因为它的功能和安全性有限。不过,Nginx是一个很好的搭档。
gevent的作者推荐使用gunicorn。
跳过wsgi(而不是第二个http服务器)其实没什么意义。wsgi只是一个让程序之间能够互相沟通的约定。
1
gevent 并没有自带一个现成的 HTTP 服务器,但你可以用 gevent.server
来自己写一个。不过,使用一个轻量级的 WSGI 容器,比如 Paste Deploy,可能会更简单一些。