I'm running apache 2.2 with PHP 5.2 in FastCGI mode with mod_fcgid. The platform is RedHat Enterprise Linux 5.5 x86_64. I have my minimum and maximum fastcgi slaves set to 35. How do I track how many php-cgi processes are busy at a certain point in time? I want to see if I'm running out of php-cgi processes and need to increase the number of processes running. I can use "ps" to see how many processes are running, but not how many are busy. How can I see if Apache is blocking on a free php-cgi process?
Asked
Active
Viewed 2,254 times
1 Answers
0
You can parse it from mod_status page:
busy_workers=`lynx -dump http://domain.com/server-status?auto | awk '/BusyWorkers/ { print $2 }'`

quanta
- 51,413
- 19
- 159
- 217
-
Thanks, but this would only work if I was using mod_php, where each apache process has a PHP interpreter. I'm using PHP as a FastCGI process pool with mod_fcgid. When using FastCGI, the number of Apache workers is a different pool from the number of PHP workers/processes. PHP processing doesn't happen within the Apache process with this method. This setup improves performance and reduces memory usage. – edgester Aug 25 '11 at 17:03
-
1`mod_status` also supports FastCGI: http://svn.apache.org/viewvc?view=revision&revision=835406 – quanta Aug 26 '11 at 07:02
-
Do I need to enable ExtendedStatus for that to work? – edgester Aug 26 '11 at 18:14
-
No, you don't. `ExtendedStatus On` give you extra info: Total Accesses, Total kBytes, ... – quanta Aug 27 '11 at 02:54
-
Sigh. I still don't see anything on the status page regarding FastCGI or fcgid. I guess I don't that patch isn't in my version of Apache. – edgester Aug 27 '11 at 14:07