Apache或lighttpd

时间:2008-10-05 15:46:41

标签: django apache lighttpd

对于开发,我使用本地LAMP堆栈,用于生产我正在使用MediaTemple's Django Container(我喜欢BTW)。 MT的容器使用lighthttpd。老实说,我从来没有任何其他经验。我一直使用Apache。我一直在读书:

以下是问题:

  • 一方有什么优势?
  • 在我的开发设置中使用lighthttpd会不会让我受益
  • 使用两者有什么关系? Linux.com文章讨论了将lighttpd Apache一起使用。

5 个答案:

答案 0 :(得分:4)

两者的好处:Apache更强大和可扩展(如果你不需要那种功能,则无用,但无论如何......)和lighttpd在静态内容上更快。我们的想法是将您的网站分成静态内容(css,js,图像等)和流经Apache的动态代码。

我并不是说你自己也不能用lighttpd做很多事情。你可以和人们一起做。

如果您在生产服务器上专门使用lighttpd,我会认真考虑在开发和登台服务器上镜像,以便在部署之前准确了解预期结果。

答案 1 :(得分:4)

对于具有来自不同IP地址的n个http请求的纯静态网页(.gif,.css等): 1. Apache:运行n个进程(在内存中使用mod_perl,mod_php) 2. lighttpd:运行1个进程和1个线程(可以在启动之前分配m个线程)

对于具有来自不同IP地址的n个http请求的纯动态网页(.php,.pl): 1. Apache:运行n个进程(在内存中使用mod_perl,mod_php) 2. lighttpd:由于异步I / O运行1个lighttpd进程,并为每种脚本语言运行m个fast-cgi进程。

Lighttpd消耗的内存要少得多。在Google被Google收购之前,YouTube曾经是lighttpd的大用户。请访问其主页以获取更多信息。

P.S。在我以前的公司,我们使用负载均衡器根据其URL后缀分配http流量。为什么不完全lighttpd?由于遗留原因。

答案 2 :(得分:3)

Web服务器和Django之间的接口方式可能比选择Web服务器软件对性能产生更大的影响。例如,已知mod_python在RAM上很重。

This question及其答案也讨论了其他网络服务器选项。

我不会担心客户端软件的兼容性问题(请参阅MarkR's comment)。使用lighttpd和FastCGI服务Django时我没有遇到过这样的问题。我希望看到服务器和客户端软件的多样化生态系统。拥有良好的标准比单个供应商的事实上的产品更好。

答案 3 :(得分:0)

答案取决于您的项目目标。如果它是一个大规模的站点,正常运行时间是关键的,负载是高配置lighttpd;它惊人地扩展。唯一的缺点是你最初必须更多地动手。大多数主机都不会支持这一点,知道你在使用lighttpd做什么真的很值得。

如果这是一个适合您母亲的网站,那么每个月会有几千名访客,apache会更好地工作。她将能够更容易地移动到新主机并且更容易找到支持。

答案 4 :(得分:-5)

使用标准Web服务器。 50%的网站(Netcraft)使用Apache,因此,如果您使用Apache,人们的网络浏览器,蜘蛛,代理等几乎可以保证与您的网站(无论如何都是网络服务器)一起使用。

1.5%的网站(Netcraft)使用Lighthttpd,因此人们使用它测试应用的可能性要小得多。

任何性能差异在生产中都可能无关紧要;在可能在生产中部署的最慢的硬件上,Apache服务器可能以比您更高的带宽提供静态请求。