Re: 答复: server performance issue

Ilan Berkner iberkner at gmail.com
Tue Oct 26 18:21:13 MSD 2010


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 at 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 at techlightenment.com]
> *发送时间:* 2010年10月26日 19:07
> *收件人:* nginx at 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 at 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 at 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 at nginx.org
> http://nginx.org/mailman/listinfo/nginx
>
>
>
>
> --
> Warez Scene <http://thewarezscene.org> Free Rapidshare Downloads<http://www.nexusddl.com>
>
>
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://nginx.org/mailman/listinfo/nginx
>
>
>
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://nginx.org/mailman/listinfo/nginx
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx/attachments/20101026/a8f8c209/attachment.html>


More information about the nginx mailing list