Nginx + PHP-FPM缓慢,并发更多的并发AJAX请求

时间:2015-03-26 13:27:48

标签: nginx php

我从常见的LAMP堆栈(Linux + Apache + MySQL + PHP)切换到 nginx + PHP-FPM主要是因为速度。速度提升是令人难以置信的 - 没有测量但看起来像是一个项目使用Zend(旧库)和Zend 2(新应用程序)用于后端和Bootstrap + CoffeeScript + Backbone.js在前端网站渲染速度提高2到3倍!

唯一的缺点是调用了太多并发AJAX请求的页面。大多数情况下,一个页面最多会调用5个不同的AJAX请求来加载渲染数据,但很少需要10到20个并发请求。在这种情况下,与在Apache上渲染相比,渲染速度减慢了2到4倍(现在只能在两个不同的服务器上进行比较,而运行Apache的那个服务器较旧且整体速度较慢 - 但它可以渲染具有许多并发AJAX请求的页面更快。)

这是我的PHP-FPM配置(关于池管理器):

pm = dynamic
pm.max_children = 20
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 4

pm.max_children增加到40似乎对速度似乎没有任何影响,但在从默认值5更改为当前20后,我可以看到一些速度增加。

我还将nginx的worker_processes增加到值4(核心数),同时将worker_connections保持在默认1024值。

为了使更多并发AJAX请求的页面运行得更快,还有什么我应该改变的吗?

0 个答案:

没有答案