小编MrM*_*ees的帖子

是否Nginx + php-fpm比Apache + mod-php快得多

我在Apache服务器上运行基于PHP的Web应用程序,后端有大量的php处理.由于整体性能较低,我致力于提高应用程序的性能.首先,我遵循了客户端缓存,gzip启用,js-css缩小等技术,这些技术可以很好地提高性能.

为了进一步提高性能,我想尝试服务器级别的改进.所以我尝试通过在Apache和Nginx服务器上托管它来比较应用程序性能.

  • Nginx版本 - 1.0.15;
  • Apache版本 - 2.2.15;
  • php版本 - 5.4.38;

在Apache I用户Apache + mod-php和Nginx中,我使用Nginx + php-fpm进行比较.正如大多数教程所解释的那样,我将Nginx工作者的数量配置为等于处理器中的核心数量.我用jmeter做了压力测试,下面是我可以用它生成的图表.

在所有这些图中,x轴是我发送的每个请求,y轴是获取每个请求的响应的毫秒数.

访问登录页面

在此输入图像描述

提交登录页面

在此输入图像描述

访问主页

在此输入图像描述

我只能在1秒内执行最多100个并发用户的测试,因为它在两个服务器设置之后开始丢弃请求.

Nginx的性能比Apache有所改善,但是将我的所有服务器架构从Apache更改为Nginx并不是一个主要的区别.当我观察服务器资源利用率时,我发现Nginx和Apache之间并没有太大区别

当我进行人们已经完成的其他比较时,我发现他们声称Nginx在并发访问中要快得多,如下图所示.

http://www.eschrade.com/wp-content/uploads/2014/01/event-mpm-nginx.gif

但我无法观察到Nginx在Apache上的性能有任何重大差异,即使在1秒内有100个并发访问.

以下是我的问题.

  1. 由于有效使用内存和其他资源,Nginx + php-fpm是否比Apache + mod-php更快地进行服务器操作?
  2. Nginx是否仅建议服务器静态竞争而不是重型服务器操作站点?
  3. 有没有更好的方法来配置Nginx以获得更多的性能提升?

php apache performance nginx stress-testing

15
推荐指数
3
解决办法
2万
查看次数

标签 统计

apache ×1

nginx ×1

performance ×1

php ×1

stress-testing ×1