我有一个新的 Ubuntu 服务器,我想听听大家对 Web 服务器的意见。我正在使用 PHP 进行开发,在 Apache 和 nginx 之间犹豫不决。我使用 WAMP 时没有遇到任何问题,但在这种情况下,我想尽可能地提高性能(性能指的是同时请求的数量和每个请求的时间)。
我的发现是:nginx 占用的内存更小,连接开销也更小,在静态内容和低端机器上具有更优异的性能。
Apache 的连接开销更大,但在 PHP 上速度更快,因为它的连接性更强。不过我不确定 HHVM 在其上的表现如何。使用动态加载的模块进行配置也更容易。
我也听说过混合设置,使用 nginx 作为静态内容服务器并将 PHP 路由到 Apache。
就我的使用情况而言,我将其用作 Web 服务器、个人文件服务器和开发服务器。我使用带有用户管理系统的 MVC 框架,这对我来说似乎是动态的。
问题:在正确的配置和更强大的硬件条件下,Apache 在同时连接数方面是否会胜过 nginx?更具体地说,我应该使用这 3 个选项中的哪一个?
请同时包含所需的配置,因为它们会产生很大的不同。非常感谢。
以下是我的物理设置:
Intel i7-4790
8GB DDR3 RAM(很快将升级到 16GB)
250GB SSD 用于应用程序和 Web 服务器内容
1TB HDD 作为辅助存储/备份
Ubuntu Desktop 14.04
以下是我在 Web 服务器上的(计划)设置:
HHVM
MySQL 或 MariaDB
PHP APC 或 Optimizer+
Varnish
Redis
答案1
我决定使用 nginx,它在同时连接数方面远远胜过 Apache。
相对于nginx+Apache来说,使用nginx只不过降低了系统的复杂度,使得排查问题更加简单。