为什么选择Apache而不是NGINX/Cherokee/Lighttpd?

12

Apache已经成为事实上的标准Web服务器超过十年了,但最近几年出现了使用更少线程和异步I/O每秒处理更多请求且消耗更少内存的Web服务器。在我看来,我也发现这些服务器的配置更加简单和精简。

当异步服务器如此轻量级时,为什么人们还要使用Apache?是否存在明显的好处?

3个回答

17

普及性、“足够好”以及熟悉感。


广泛使用的好处不言而喻。 - pbreitenbach

12

Apache的.htaccess提供了灵活的配置, 这使得共享主机上的用户可以自定义apache的某些设置而无需更改核心apache配置。

它是典型LAMP设置中捆绑的标准服务器,尽管许多服务与其他Web服务器一起使用(如静态文件、视频流等)。

由于Apache很受欢迎,因此很容易找到解决任何问题的解决方案。

除此之外,其他解决方案可能会更好。


1

如果您使用Event MPM,Apache是异步的。与Nginx和Cherokee等不同,它不是默认设置。

Apache在2.4中进行了一些重要的改进,以便更具竞争力——尤其是在使用Event MPM处理静态请求方面。各种基准测试并不好,但:

很难确定Apache在2.4中慢了多少,因为Apache的开箱即用配置对性能有害,并且在某些方面受到遗留问题的限制。例如,.htaccess需要在每个请求上读取大量文件,其中可能包括许多规则和正则表达式。Nginx没有这个问题,Cherokee也没有。Litespeed以Apache的风格支持.htaccess,但只有在付费的情况下。大多数基准测试不会关闭像这样的功能。

大多数基准测试也是荒谬的,因为它们在本地运行并在GbE网络或类似网络上运行。一个真正的Web服务器必须能够良好地处理各种速度,包括3G手机。Apache在实际环境中的表现可能更好。

我表示怀疑。

Nginx仍然更快,我可能会选择它,但Apache并没有睡着。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接