哪个最适合 Django?Lighttpd 还是 Nginx?或者可能是其他的?

哪个最适合 Django?Lighttpd 还是 Nginx?或者可能是其他的?

根据您的经验,Lighttpd 和 Nginx 哪个更适合 Django?我都用过,几乎没发现任何区别,它们工作得很好…… 是否有一个用例比另一个好得多?回答时请同时考虑配置的简单性和效率。

./manage.py runfcgi daemonize=false port=8098 host=127.0.0.1我通常的设置是通过 daemontools 或脚本启动一个单独的 Django FCGI 进程(如) init.d,并使用 lighty/nginx 充当反向代理。

哦,如果您觉得其他 http 服务器比 Lighty 和 Nginx 更适合 Django,请随时分享您的想法。

答案1

当使用 Nginx 和 Lighttpd 作为 Django、Rails 等的反向代理时,它们都是比 apache 更好的选择。它们都支持 FastCGI 和 Http 代理。它们都提供基于单线程 select()(或更好)的模型,以实现高效的资源利用率。

然而我投票给 Nginx,它拥有非常活跃的用户群(目前是 Ruby on Rails 的宠儿),并且正在积极开发中。Lighttpd 可能会被误认为已经死了,两年多来我们仍在等待 1.5 的测试版。

答案2

mod_wsgi 是将 Django 应用程序投入生产的推荐方法。Apache 的 mod_wsgi 比 nginx 好得多。您无法找到 nginx 的 mod_wsgi 的官方软件包(在当前的 Linux 发行版中),您需要自己编译它。我喜欢 nginx,但如果您想安全起见,请使用 Apache mod_wsgi。

答案3

mod-wsgi 是在生产中运行 django 应用程序的最佳方式,比 fastcgi 更简单,并且没有启动时间等问题。

真正的 mod-wsgi 是针对 apache 的,但还有另一个针对 nginx 的 mod-wsgi。apache 的那个很棒,我无法评论 nginx 的那个。

就我个人而言,我会远离 lighttpd。它没有 nginx 的稳定性,我还没有见过没有内存泄漏的 lighttpd 案例。

基本上,我的第一选择是 apache 2.2,第二选择是 nginx。

不要相信关于响应时间和可扩展性的炒作。事实是,这并不重要。(Google 使用 Apache)。

答案4

另外,请考虑使用 Google App Engine。您可以免费在那里托管您的 Django 项目,而不必担心维护服务器基础设施。

相关内容