根据我的研究,我发现 nginx 最适合提供静态文件和图像。我的应用程序严重依赖于上传图像并重写它们,然后提供它们。鉴于我目前只有一个 VPS,有人建议我使用 nginx 来提供图像和网站,并反向代理到 Apache(在同一个 VPS 上)以使用图像魔法重写文件并处理文件上传。哪个是最佳解决方案,Apache、Nginx 还是 Apache + Nginx?就最佳解决方案而言,我正在寻找最低的平均 RAM 消耗,同时保持可能不到 2 秒的良好加载速度?
答案1
你问的问题太宽泛了,没有一个简单的答案。不过,我认为人们越来越不理解将 Nginx 和 Apache 放在同一台服务器上的想法,因为它们提供不同的性能配置,而协同工作可以“让事情变得更好”。
运行 Apache(我猜还有 PHP)和 Nginx 会比只运行 Apache 或 Nginx 占用更多内存。Nginx 将通过使用 FastCGI 运行 PHP 代码,因此 Nginx + PHP 比 Nginx + Apache + PHP 更节省内存(可能)。但是,Apache + PHP 的内存效率可能与 Nginx + PHP 一样高,具体取决于您的配置方式。
仅安装 Apache,查看其运行情况,如果遇到问题,请考虑仅迁移到 Nginx。如果这仍然不起作用,请考虑混合安装。