为啥在 NGINX/Cherokee/Lighttpd 上使用 Apache?

Posted

技术标签:

【中文标题】为啥在 NGINX/Cherokee/Lighttpd 上使用 Apache?【英文标题】:Why use Apache over NGINX/Cherokee/Lighttpd?为什么在 NGINX/Cherokee/Lighttpd 上使用 Apache? 【发布时间】:2011-01-08 01:55:44 【问题描述】:

十多年来,Apache 一直是事实上的标准 Web 服务器,但近年来为我们带来了消耗更少 RAM 并使用更少线程和异步 I/O 每秒处理更多请求的 Web 服务器。在我看来,我还发现这些服务器的配置更加简单明了。

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

【问题讨论】:

【参考方案1】:

Apache IS 如果您希望它与 Event MPM 一起使用,则它是异步的。不像nginx和Cherokee等,不是默认的。

Apache 在 2.4 中采取了一些重要举措,因此它可以更具竞争力——尤其是。因为它与使用 Event MPM 服务静态请求有关。各种基准都不能很好地说明这一点,但是:

很难确定 Apache 在 2.4 中的速度有多慢,因为 Apache 的“开箱即用”配置不利于性能,而且遗留问题在某些方面阻碍了它。例如,.htaccess 需要在每个请求上统计/读取大量文件,其中可能包含许多规则和正则表达式。 Nginx 没有这个问题,Cherokee 也没有。 Litespeed 具有 Apache 风格的 .htaccess 支持,但前提是您需要付费。大多数基准测试不会关闭此类功能。

大多数基准测试也很荒谬,因为它们是在本地运行并通过 GbE 网络或类似网络运行。真正的网络服务器必须能够很好地应对各种速度,包括 3G 手机。可能是 Apache 在现实世界中的性能更好。

我怀疑。

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

【讨论】:

【参考方案2】:

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

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

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

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

【讨论】:

【参考方案3】:

无处不在、“足够好”和熟悉。

【讨论】:

广泛使用的好处怎么强调都不为过。

以上是关于为啥在 NGINX/Cherokee/Lighttpd 上使用 Apache?的主要内容,如果未能解决你的问题,请参考以下文章

为啥 CoreGui Roblox 锁定在 DataModel 中,为啥受信任的用户不能使用 CoreScripts?

为啥 + 仅在客户端是 NaN?为啥不在 Node.js 中?

在执行语义分割任务时我应该减去图像均值吗?为啥或者为啥不?

为啥我们不能在 TypeScript 类中定义一个 const 字段,为啥静态只读不起作用?

为啥这个函数序言中没有“sub rsp”指令,为啥函数参数存储在负 rbp 偏移处?

为啥这个函数序言中没有“sub rsp”指令,为啥函数参数存储在负 rbp 偏移量?