2009/8/19 Noor <mlist-fc...@orientalsensation.com>:


> According to these findings, the best benchmark is when
> MaxProcessCount is set to 8 (which is number of CPU's). Is this just
> an accident? According to so many tips and pages I read on the

No. In general, a thread-pool design, which is what mod_fcgid+PHP
effectively emulates, will peak with the number of worker threads
equal to the number of active CPUs. Note that this is in fact a very
logical result, since PHP processing is CPU-bound.

> Internet (and even its default value,) this variable should be around
> 100. If you notice the last benchmark, when I put 64 in this variable,

This might be true in the general case if PHP is used as mod_php and
Apache handles not only PHP requests but also other, static content
delivery (which make serving IO and network latency bound). In that
case, and interpolated over real-life workload, increasing the number
of server threads or processes to high number will be beneficial
simply because the vast majority of them will sleep in a point in

> I got 26 failed transactions. While when I put only 8 working
> processes, I got no failures and the benchmark had the best times and
> records!

Overloading your CPUs can do that, yes.

> And while you're at it, I'll through in another question: How does
> eAccelerator/FastCGI manage the shared memory segments? According to

Very, very badly, and for silly reasons too. APC and eAccelerator
could be upgraded with code that would make them use truly shared
memory, but for whatever reasons (possibly nobody has paid for the
development), they don't.


Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
Mod-fcgid-users mailing list

Reply via email to