[solved] fcgi spawnt ungewollt neue prozesse

Apache, Lighttpd, nginx, Cherokee
standbye
Posts: 146
Joined: 2002-10-16 18:05
Location: daheim :)

[solved] fcgi spawnt ungewollt neue prozesse

Post by standbye » 2008-04-22 16:18

Ok, das Topic hört sich etwas dappich an, ich versuch es dennoch einmal zu erklären.

Ich hab seit dem ich mein Centos 5 auf php5 / fcgi umgestellt habe ein komisches Verhalten. Bei manchen Webseiten (vornehmlich Admin Bereiche von diversen PHP Projekten) fängt mein fcgi an, bei einem einzelnen Aufruf statt einen. massig Prozesse zu spawnen
Zudem läd sich die Webseite dann natürlich zu tode.
Ich habs ncoh nicht geschafft das jetzt einzugrenzen, wäre also für einige Hilfe dankbar. Dr. Google und diverse Bugtracker haben mir leider noch nichts zu dem behaviour sagen können.

Code: Select all

ue Apr 22 16:10:28 2008] [warn] FastCGI: (dynamic) server "/var/www/fcgi/littleproject.de/php5-fcgi-starter" (uid 2011, gid 2011) started (pid 8322)

[Tue Apr 22 16:11:54 2008] [warn] FastCGI: (dynamic) server "/var/www/fcgi/littleproject.de/php5-fcgi-starter" (uid 2011, gid 2011) started (pid 8333)

[Tue Apr 22 16:11:59 2008] [warn] FastCGI: (dynamic) server "/var/www/fcgi/littleproject.de/php5-fcgi-starter" (uid 2011, gid 2011) started (pid 8336)

[Tue Apr 22 16:12:04 2008] [warn] FastCGI: (dynamic) server "/var/www/fcgi/littleproject.de/php5-fcgi-starter" (uid 2011, gid 2011) started (pid 8339)

[Tue Apr 22 16:12:09 2008] [warn] FastCGI: (dynamic) server "/var/www/fcgi/littleproject.de/php5-fcgi-starter" (uid 2011, gid 2011) started (pid 8342)

[Tue Apr 22 16:12:15 2008] [warn] FastCGI: (dynamic) server "/var/www/fcgi/littleproject.de/php5-fcgi-starter" (uid 2011, gid 2011) started (pid 8345)

[Tue Apr 22 16:12:19 2008] [warn] FastCGI: (dynamic) server "/var/www/fcgi/littleproject.de/php5-fcgi-starter" (uid 2011, gid 2011) started (pid 8348)



so schaut das ganze aus.

Wenn ich den "Frontend" also User Bereich öffne, klappt alles ganz normal er spawnt max 1 nen Prozess und liefert die Webseite auch fix aus.

gruss
Peter

P.S. hier mal die Versionen ;)
Server version: Apache/2.2.3
X-Powered-By: PHP/5.1.6
mod_fastcgi 2.4.6

Und Teile der Configs:
wrapper

Code: Select all

#!/bin/sh



umask 022



PHPRC="/var/www/fcgi/littleproject.de/php5/"



export PHPRC

PHP_FCGI_CHILDREN=2

export PHP_FCGI_CHILDREN

PHP_FCGI_MAX_REQUESTS=500

export PHP_FCGI_MAX_REQUESTS



exec /usr/bin/php-cgi


fcgi module config

Code: Select all

<IfModule mod_fastcgi.c>

        FastCgiWrapper On

        FastCgiIpcDir /var/lib/apache2/fastcgi



        FastCgiConfig -minProcesses 1

                      -maxProcesses 400

                      -maxClassProcesses 50

                      -multiThreshold 80

                      -killInterval 60

                      -startDelay 5

                      # -singleThreshold 100

                      # -autoUpdate

                      # -pass-header HTTP_AUTHORIZATION



        FastCgiServer /var/www/fcgi/master/php5-fcgi-starter -user vu2000 -group vu2000 -idle-timeout 300



        #

        # PHP5 SUPPORT

        #



        AddHandler php-fastcgi .php .php5



        <Location /php5/php5-fcgi-starter>

            SetHandler fastcgi-script

            Options +ExecCGI

        </Location>



        Action php-fastcgi /php5/php5-fcgi-starter

        AddType application/x-httpd-php .php .php5

</IfModule>

Last edited by standbye on 2008-04-23 10:34, edited 1 time in total.

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: fcgi spawnt ungewollt neue prozesse

Post by Roger Wilco » 2008-04-22 17:42

[quote="Standbye"]

Code: Select all

        FastCgiConfig [...]
                      -maxProcesses 400
                      -maxClassProcesses 50
                      [...]

Hast du hier mal niedrigere Werte eingetragen? Siehe http://www.fastcgi.com/mod_fastcgi/docs ... tCgiConfig

Außerdem könntest du das error_log, SuExec Log und ggf. die Datei, in die dein PHP seine Fehler loggt, auf entsprechende Meldungen überprüfen.

standbye
Posts: 146
Joined: 2002-10-16 18:05
Location: daheim :)

Re: fcgi spawnt ungewollt neue prozesse

Post by standbye » 2008-04-22 18:06

Hoi Roger,

danke für dein Anwort

also ich hab die Parameter runtergeschraubt, hilft allerdings auch nicht viel.
in den andern logfiles steht nicht viel

suexec log

Code: Select all

[2008-04-22 17:05:02]: uid: (vu2000/vu2000) gid: (vu2000/vu2000) cmd: php5-fcgi-starter
[2008-04-22 17:22:50]: uid: (vu2009/vu2009) gid: (2009/2009) cmd: php5-fcgi-starter
[2008-04-22 17:25:26]: uid: (vu2011/vu2011) gid: (2011/2011) cmd: php5-fcgi-starter
[2008-04-22 18:03:24]: uid: (vu2000/vu2000) gid: (vu2000/vu2000) cmd: php5-fcgi-starter


errorlog

Code: Select all

[Tue Apr 22 16:09:38 2008] [error] [client 212.227.99.83] FastCGI: comm with (dynamic) server "/var/www/fcgi/littleproject.de/php5-fcgi-starter" aborted: (first read) idle timeout (30 sec), referer: http://planet.littleproject.de/admin/
[Tue Apr 22 16:09:38 2008] [error] [client 212.227.99.83] FastCGI: incomplete headers (0 bytes) received from server "/var/www/fcgi/littleproject.de/php5-fcgi-starter", referer: http://planet.littleproject.de/admin/
[Tue Apr 22 16:12:20 2008] [error] [client 212.227.99.83] (4)Interrupted system call: FastCGI: comm with server "/var/www/fcgi/littleproject.de/php5-fcgi-starter" aborted: select() failed, referer: http://planet.littleproject.de/admin/
[Tue Apr 22 16:12:20 2008] [error] [client 212.227.99.83] FastCGI: incomplete headers (0 bytes) received from server "/var/www/fcgi/littleproject.de/php5-fcgi-starter", referer: http://planet.littleproject.de/admin/
[Tue Apr 22 16:53:18 2008] [error] [client 212.227.99.83] FastCGI: comm with (dynamic) server "/var/www/fcgi/littleproject.de/php5-fcgi-starter" aborted: (first read) idle timeout (30 sec), referer: http://planet.littleproject.de/admin/index.php
[Tue Apr 22 16:53:18 2008] [error] [client 212.227.99.83] FastCGI: incomplete headers (0 bytes) received from server "/var/www/fcgi/littleproject.de/php5-fcgi-starter", referer: http://planet.littleproject.de/admin/index.php


Der Script bricht natürlich ab (timeout) das is auch ok so, nur ich frag mich warum er hängt ...
php an sich hat keine fehler, ich krieg nur einen 500er vom apachen.

standbye
Posts: 146
Joined: 2002-10-16 18:05
Location: daheim :)

Re: fcgi spawnt ungewollt neue prozesse

Post by standbye » 2008-04-23 08:49

Ok, ich hab wohl den verursacher gefunden.

Ich sperre auf einer vorgelagerten firewall alle zugriffe von dem server ins i-net. Allerdings versuchen eben jene seiten, die dann die vielen Prozesse spawnen, updateinfos von ihren Projektservern zu ziehen. Das geht natürlich nicht und sie müllen sich zu.
Regeln für die Server eingetragen und alles geht wunderbar.

Im Frontend laden die Seiten natürlich nichts von fremden servern, nur im Admin Backend um evtl. updates anzuzeigen.