Re: fastcgi opening pages - very slow

Olivier Le Cam <[email protected]>
Newsgroups gmane.comp.web.fastcgi.devel
Message-ID <[email protected]>
root-bJTsZiUCoz/[email protected] wrote:
> hello
>  
> i have debian lenny 64bit lenny server with intel quadcore cpu and 4gb 
> ram (fastcgi 2.4.6). i have about 1.4 tb traffic month on this server. 
> my problem is the speed of fastcgi applikation. when i want the visit 
> one website on my server somethimes i must wait about 5 seconds the view 
> the site. after them the speed is better. you can try the visit these 
> sites and you will see somethimes you must wait some seconds the view 
> the site:
> http://www.ally-tera.de or http://www.board2null.de . when i restart the 
> webserver everything ist going very fast for 30 minutes. after them the 
> speed ist very bad again. please help me to solve the problem. is my 
> configuration bad? i have many visitors per day: about 5000.... 

Hi -

I reported something similar before (see below) but I never get rid of 
the problem.

A far as I understood, fastcgi always tries to connect to a php-cgi 
process even if that said-process is no longer loaded (aka was killed by 
fastcgi). In this situation, fastcgi keep tries to join a non-existing 
process until timeout is reached. After that only it does respawn a new 
process which takes several seconds indeed due to the timeout. I think 
that when a previously-spawned process is killed for some reasons, 
fastcgi should not leave any trace of it in order to respawn a new one 
as soon as possible when required. I started to deal with that problem 
but I never find enough time to spend entering my brain in the source code!

I'm not sure that I helped you so much, except that now you know you are 
not alone to face this problem! :)

Best regards,

Olivier Le Cam

-- Copy of email sent on Nov 11, 2008 --

Setup based on Apache (2.2.3-4+etch5) + libapache2-mod-fastcgi (2.4.2-8) 
+  php5-cgi (5.2.6-0.dotdeb.1)

Everything is working fine with this setup except for an abnormal long 
delay for spawning a new php5-cgi through suexec for the second time 
(after the first one has been killed).

Way to repeat the problem:

1. Apache just (re)started
2. Access to a virtualhost, say http://test.mydomain.com
     This takes approx. 0.5s which is fine
2. Access to this site again
     This takes approx. 0.04s which is still fine
3. Wait that the spawned process php5-cgi for this virtualhost is killed 
by fcgi-pm. Then access to the site again. Now it takes more than 3s to 
get the php5-cgi spawned. After that, time access is back to normal 
(~0.04s) untill the process is killed (then the 3s delay come back for 
the next spawn).

I have this in my Apache conf:

FastCgiWrapper /usr/local/lib/apache2/suexec-fcgi
FastCgiConfig -minProcesses 0 -maxClassProcesses 1 -maxProcesses 300 \
     -processSlack 30 -singleThreshold 20 -killInterval 240
AddHandler php5-fastcgi .php .php3 .php4 .php5
<Location /cgi-bin/php5-fcgi>
     SetHandler fastcgi-script
     Options +ExecCGI
</Location>
Action php5-fastcgi /cgi-bin/php5-fcgi
AddType application/x-httpd-php .php5

And this is the cgi-bin/php5-fcgi wrapper:
#!/bin/sh
export PHPRC="/web/s/t/test/php-configs/php5/"
export PHP_FCGI_CHILDREN=0
export PHP_FCGI_MAX_REQUESTS=1000
exec /usr/bin/php5-cgi

I spends some time attaching strace to fcgi-pm and Apache process, but I 
sadly didn't get a chance to figure out what could be the problem.

Does this sound to someone?

Any help/hint/idea will be greatly appreciated. Thanks in anticipation!
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.