如果我想用Apache运行Pylons应用,应该用mod_wsgi还是proxy来连接?

4 投票
2 回答
1354 浏览
提问于 2025-04-15 11:21

或者我应该使用一个完全不同的服务器吗?

2 个回答

0

我之前也用过mod_fastcgi和flup,效果非常不错,已经成功好几次了。网上有一些教程可以帮助你设置这个,但遗憾的是,你可能还是需要自己动手调整一些东西,才能让一切正常运行:

http://wiki.pylonshq.com/display/pylonscookbook/Production+Deployment+Using+Apache,+FastCGI+and+mod_rewrite

8

Nginx和mod_wsgi一起使用时,需要一个非阻塞的异步框架和设置,直接用Pylons可能不太好使。

我通常选择通过代理的方式,连接到一个独立的Pylons进程,使用PasteScript#cherrypy这个WSGI服务器(因为它的性能比Paste#http好,不过如果你有内存泄漏的话,它不会自动回收线程...)。

如果你坚持要用Apache,并且这是你的服务器(这样你可以编译和运行Apache mod_wsgi),我建议使用这种设置,因为这样能更有效地利用多个核心,维护起来也更简单。使用代理设置的话,你需要用mod_proxy_balancer和多个paste进程,才能有效利用多个核心/CPU。

如果你是在别人的Apache上部署(共享主机),那么mod_proxy通常是更简单的解决方案,因为它在Apache 2.2及以上版本中是默认的。

就我个人而言,我通常会用nginx加上代理,连接到多个paster进程。

撰写回答