ispCP - Board - Support
php5-cgi Prozesse sterben nicht - Printable Version

+- ispCP - Board - Support (http://www.isp-control.net/forum)
+-- Forum: ispCP Omega International Area (/forum-22.html)
+--- Forum: German Corner (/forum-26.html)
+--- Thread: php5-cgi Prozesse sterben nicht (/thread-6290.html)

Pages: 1 2 3 4 5 6


php5-cgi Prozesse sterben nicht - magnummandel - 04-02-2009 09:31 PM

Hallo zusammen,

ich habe auf einem relativ frisch aufgesetztem System ein Problem. Nachdem der Apache frisch gestartet ist funktioniert alles prima. Nach ein paar Minuten jedoch passiert es, dass nach einem klick einige Sekunden ins Land gehen bis der Server antwortet. Danach gehen wieder einige Anfragen, dann wieder Däumchen drehen. In dieser Zeit ist auch kein anderer Dienst erreichbar, bzw. man wartet auf einen Connect oder auf die nächste Aktion. Dabei werden die Timeouts immer länger. Am Anfang sind es mal 5 Sekunden, später kann es dann auch schonmal 20s dauern bis der Server sich meldet.

Beim nachschauen ist mir dann aufgefallen, dass kein php5-cgi Prozess stirbt. in top stehen teilweise welche die mehrere Stunden alt sind. Nach einem Apache-Neustart ist alles wieder in Ordnung. Aber ach nur solange, bis sich wieder ein paar /usb/bin/php5-cgi angesammelt haben. Dann wieder das gleiche Phänomen.

In den Logs steht nichts. RAM-Ausnutzung ist auch nicht übermäßig 230 MB bei 512 Verfügbar.

Das System ist ein mittlerer vServer, Debian Lenny und ispCP 1.0
Ausser mod_security ist am Apache (soweit ich mich erinnern kann) nichts zusätzlich gemacht worden. Prefork habe ich dann mal testweise installiert, aber ohne nennenswerten Erfolg.

Hat da jemand noch eine Idee?

Danke und Gruß,
MM


RE: php5-cgi Prozesse sterben nicht - BeNe - 04-02-2009 09:35 PM

Das Problem ist bekannt und wir sind selber nicht immer ganz sicher wieso.
Hast Du FastCGI oder fcgid am laufen ?

Greez BeNe


RE: php5-cgi Prozesse sterben nicht - Lucan - 04-02-2009 09:44 PM

Check mal die fastcgi.conf bzw die fastcgi_ispcp.conf in /etc/apache2/modsavailable

Auserdem check mal den Ispcp Cron, der liegt glaube ich irgendwo in /etc/ispcp/ .


Vermute mal fast, das in mindestens einen der beiden Files die Variablen nicht alle gesetzt sind.

Poste die Datein dann ggf. hier.



Grüße


RE: php5-cgi Prozesse sterben nicht - BeNe - 04-02-2009 09:49 PM

Quote:Auserdem check mal den Ispcp Cron, der liegt glaube ich irgendwo in /etc/ispcp/ .
Liegt unter:
Code:
/etc/cron.d/ispcp

Wobei das damit eigentlich nix zu tun hat oder ?

Greez BeNe


RE: php5-cgi Prozesse sterben nicht - magnummandel - 04-02-2009 09:54 PM

Also im moment läuft fcgid. Auf die Idee mit fastcgi bin ich auch schon gekommen, allerdings hat mit der Apache dann bei einem kurzen Test direkt Fehler um die Ohren geworfen, daher habe ich das noch nicht probiert.

Die cron habe ich mir schon angeschaut, da ich das alte Problem mit den Logs hatte. Den habe ich also schon angepasst, allerdings denke ich auch, dass das damit relativ wenig zu tun hat.


RE: php5-cgi Prozesse sterben nicht - BeNe - 04-02-2009 10:05 PM

Du kannst es mal mit dieser fcgid config versuchen:
Code:
#
# ispCP Ï (OMEGA) a Virtual Hosting Control System
#
# @copyright    2006-2008 by ispCP | http://isp-control.net
# @version              SVN: $Id$
# @link                 http://isp-control.net
# @author               ispCP Team
#
# @license
#   This program is free software; you can redistribute it and/or modify it under
#   the terms of the MPL General Public License as published by the Free Software
#   Foundation; either version 1.1 of the License, or (at your option) any later
#   version.
#   You should have received a copy of the MPL Mozilla Public License along with
#   this program; if not, write to the Open Source Initiative (OSI)
#   http://opensource.org | osi@opensource.org
#
################################################################################​

<IfModule mod_fcgid.c>
  AddHandler fcgid-script .php .php5
  SocketPath /var/lib/apache2/fcgid/sock
  IdleTimeout 600
  IdleScanInterval 240
  BusyTimeout 300
  BusyScanInterval 120
  ErrorScanInterval 6
  ZombieScanInterval 3
  ProcessLifeTime 3600
  SpawnScoreUpLimit 10
  SpawnScore 1
  TerminationScore 2
  MaxProcessCount 250
  DefaultMaxClassProcessCount 10
  DefaultMinClassProcessCount 0
  IPCConnectTimeout 20
  IPCCommTimeout 60
</IfModule>

Greez BeNe


RE: php5-cgi Prozesse sterben nicht - Lucan - 04-02-2009 10:07 PM

Poste mal bitte die conf vom fastcgi_ispcp sowie vom fastcgi
Vermute mal stark, das da die Variablen nicht richtig gesetzt sind.

Und wenn mich jetzt nicht alles täuscht, baut fcgid auch mit auf die configs von fastcgi auf.


Den Cron meinte ich wegen der Stelle hier:

# Look for and purge old sessions every 30 minutes
0,30 * * * * root /var/www/ispcp/engine/tools/ispcpphptemp.sh >/dev/null 2>&1


Oder hab ich da nen denk fehler und das hat damit gar nichts zutun?


RE: php5-cgi Prozesse sterben nicht - BeNe - 04-02-2009 10:09 PM

Quote:# Look for and purge old sessions every 30 minutes
0,30 * * * * root /var/www/ispcp/engine/tools/ispcpphptemp.sh >/dev/null 2>&1
Ja leert so wie es da steht PHPTMP. Also Sessions die von den Usern bzw. Apps nicht beendet werden. Aber keine Prozesse.

Greez BeNe


RE: php5-cgi Prozesse sterben nicht - Lucan - 04-02-2009 10:10 PM

Ich weiss es ehrlich gesagt nicht wirklich, deswegen meinte ich, er soll ihn mal checken.

Schaden tuts ja auf keinen Fall.


RE: php5-cgi Prozesse sterben nicht - magnummandel - 04-02-2009 11:07 PM

Also die fastcgi kann ich dir nur aus dem ispcp/apache/working geben, da ja derzeit fcgid aktiv ist. Aber nichts desto weniger trotz, hier ist sie:

fastcgi_ispcp.conf:
Code:
<IfModule mod_fastcgi.c>
        FastCgiWrapper On
        FastCgiIpcDir /var/lib/apache2/fastcgi2

        FastCgiConfig -minProcesses 1 \
                  -maxProcesses 400 \
                  -maxClassProcesses 5 \
                  -multiThreshold 80 \
                  -killInterval 60 \
                  -startDelay 5
                  # -singleThreshold 100 \
                  # -autoUpdate \
                  # -pass-header HTTP_AUTHORIZATION

        FastCgiServer {PHP_STARTER_DIR}/master/php{PHP_VERSION}-fcgi-starter -user {APACHE_SUEXEC_USER_PREF}{APACHE_SUEXEC_MIN_UID} -group {APACHE_SUEXEC_US$

        #
        # PHP{PHP_VERSION} SUPPORT
        #

        AddHandler php-fastcgi .php .php{PHP_VERSION}

        <Location /php{PHP_VERSION}/php{PHP_VERSION}-fcgi-starter>
                SetHandler fastcgi-script
                Options +ExecCGI
        </Location>

        Action php-fastcgi /php{PHP_VERSION}/php{PHP_VERSION}-fcgi-starter
        AddType application/x-httpd-php .php .php{PHP_VERSION}
</IfModule>

Hier haben wir dann noch die aktuelle fcgid.conf, diesmal dann aus mods-enabled (die Version von BeNe probiere ich dann gleich mal aus):

fcgid_ispcp.conf:
Code:
<IfModule mod_fcgid.c>
  AddHandler fcgid-script .php .php{PHP_VERSION}
  SocketPath /var/lib/apache2/fcgid/sock
  IPCConnectTimeout 20
</IfModule>

Die Kommentare aus dem Header habe ich mal weggelassen Smile

Danke euch schonmal.