You're issue is probably not with php-fpm. Without knowing more about your
architecture, these are key points you should look at:
1. What is your PHP code doing? What is it waiting for? Tools: xdebug (
http://www.xdebug.org/) and you could even try tracking it via the php-fpm
slow log configuration option:
- request_slowlog_timeout - The timeout (in seconds) for serving of
single request after which a php backtrace will be dumped to slow.log file.
Default: "5s". Note: '0s' means 'off'
- slowlog - The log file for slow requests.
2. How is your database performing? Are there issues with queries? again,
look at the slow log query output of mysql. Look at connection issues and
name resolution with mysql (its notoriously bad at host name resolution).
3. If your site is really busy, you may need to add more PHP application
servers to handle the load.
Again, this is not a Nginx or PHP-FPM problem per se.
2010/10/26 Xin Liu <liuxin84@gmail.com>
> Even I set the pm.max_children=50, I still got lots of errors…...
>
>
>
> Oct 26 22:09:36.354159 [WARNING] [pool www] seems busy (you may need to
> increase start_servers, or min/max_spare_servers), spawning 8 children,
> there are 0 idle, and 12 total children
>
> Oct 26 22:09:37.354215 [WARNING] [pool www] seems busy (you may need to
> increase start_servers, or min/max_spare_servers), spawning 16 children,
> there are 0 idle, and 17 total children
>
> Oct 26 22:11:20.650232 [WARNING] [pool www] seems busy (you may need to
> increase start_servers, or min/max_spare_servers), spawning 8 children,
> there are 1 idle, and 17 total children
>
> Oct 26 22:11:41.246244 [WARNING] [pool www] seems busy (you may need to
> increase start_servers, or min/max_spare_servers), spawning 16 children,
> there are 0 idle, and 21 total children
>
>
>
>
>
>
>
> *发件人:* Phil Bayfield [mailto:phil@techlightenment.com]
> *发送时间:* 2010年10月26日 19:07
> *收件人:* nginx@nginx.org
> *主题:* Re: server performance issue
>
>
>
> Your formulas look interesting, will give them a try next time I'm doing
> some optimising.
>
> Normally I would just make a rough guess based off req/sec, execution times
> etc and fine tune with ab.
>
>
>
> On 26 October 2010 11:58, SplitIce <mat999@gmail.com> wrote:
>
> ive found that if you have no blocking functions in php, aka its CPU bound
> then number of CPU cores+1 is the most efficient. If it has mysql (most
> likely does) and other IO bound operations then *2 or *3 is fine. values
> between 20-30 are common in decent scale web servers, in fact on my i7 8gb
> ram I run 20, on my amd x2 4gb ram I run 15.
>
> On Tue, Oct 26, 2010 at 9:52 PM, Phil Bayfield <phil@techlightenment.com>
> wrote:
>
> Sorry didn't read you config before posting, you already have this. :)
>
>
>
> You probably need to reduce the number of child processes, more is not
> better.
>
>
>
> On intensive PHP applications I've found lower is better.
>
>
>
> For example, if you have 100 concurrent connections, this doesn't mean
> you necessarily need 100 PHP-FPM children.
>
>
>
>
>
> _______________________________________________
> nginx mailing list
> nginx@nginx.org
> http://nginx.org/mailman/listinfo/nginx
>
>
>
>
> --
> Warez Scene http://thewarezscene.org Free Rapidshare Downloadshttp://www.nexusddl.com
>
>
> _______________________________________________
> nginx mailing list
> nginx@nginx.org
> http://nginx.org/mailman/listinfo/nginx
>
>
>
> _______________________________________________
> nginx mailing list
> nginx@nginx.org
> http://nginx.org/mailman/listinfo/nginx
>
>
_______________________________________________
nginx mailing list
nginx@nginx.org
http://nginx.org/mailman/listinfo/nginx