除了apache值得研究网络服务器吗?


13

传统上,我默认是将网站部署在apache下。我听说过有关NGinX的事情,但我想知道在什么条件下它会更好。除了apache和Nginx之外,网络服务器还有哪些其他选择,它们有什么好处?


3
非常广泛的问题。为了回答“有价值”的问题,我认为您需要对上下文进行更多的解释。
jessegavin

Answers:


6

是。

其中一台Web服务器过去每隔几个小时就会出现很大的负载高峰。在查看日志后,我发现负载高峰发生的时间,那里有很多人在看画廊。

因此,我将99%的静态内容从apache卸载到了nginx。apache被留下来服务所有的php。我的Web服务器上的负载下降到一个很小的数字,并且没有更高的负载峰值。

如果您希望从服务器中获得更多收益,请一定要有一些重量轻的服务器来提供所有静态内容。


为什么地球上的负载会有所不同?

+1,我前一段时间也做过,效果非常好。
theotherreceived

3
@Kinopkio nginx不需要每个连接一个进程/线程,因此它可以使用比apache更少的资源为相同数量的客户端提供服务。
theotherreceived

好的,抱歉,我在考虑带宽而不是服务器负载。

3

Apache可能会有点沉重,并且在重负载下可能会崩溃。有较轻的服务器可用,包括nginx,lighttpd和切诺基。

这些轻量级选项可以设置为快速提供静态文件,并将动态服务器端工作委托给Apache。


1

有一堆Web服务器在那里。我期望取决于您想要的用法。Apache可以满足人们的大部分需求,众所周知,它可以很好地更新,并且可以在几乎任何硬件和操作系统的组合上运行。

有关Web服务器的比较,请选中Web服务器软件比较


0

Netcraft跟踪Web服务器的市场份额,据他们说,IIS以26.03%的份额紧随Apache位居第二(截至2010年7月)。这是基于对205+百万个站点的调查

如果您今天使用Apache,此链接具有为什么您应该签出IIS7的原因


Linux上IIS7的问题是.... 它不运行运行..它不运行运行 ...
Tim Post

根据我对问题的理解,没有什么可以说OP要求特定操作系统的Web服务器...或者我缺少什么?我以为他也可以选择Windows。
mvark'7

0

这实际上取决于您在做什么。

如果只有静态内容,则不需要Apache。nginx或lighttpd可以为您服务。

如果您将静态和动态(Perl或PHP)混合使用,但是站点很小,您仍然可以选择其中之一加上FastCGI,或者将整个东西扔到Apache中。

如果您要同时提供Ruby和静态内容,那么mod_passenger在Apache中应该可以很好地为您服务,而nginx / lighttpd / etc可以提供静态内容。

对于Python(我的专业领域),mod_python如果愿意,可以使用Apache,但要为速度慢做准备。mod_wsgi更好,但仍然有Apache的开销,如果您有很多繁重的动态流量,这很好。Apache在大多数情况下都是举重运动员。

如果您没有大量的流量,请研究诸如gunicornuWSGI或多合一服务器Cherokee之类的新系统来处理您的Python。切诺基也可以处理静态文件。其余的,您仍然需要使用nginx / lighttpd来提供静态内容。

我不知道Java和其他语言。

但是,使用nginx的好处在于它的配置非常惊人。因此,请设置几个具有不同子域的静态服务器,每个静态服务器分别用于CSS,图像和JS。这样,您可以避免每个域一次限制2个文件的限制。设置多个服务器,然后在它们前面设置一个nginx代理/负载均衡器,以确保所有静态内容始终可用。

基本上,是的,不仅仅考虑Apache!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.