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!