mod_fcgid Speicher bedarf wächst ständig

aymanghost

New Member
Hi,
ich nutze auf meinem Server apache-mpm-worker mit mod-fcgid.
Nun ist es so dass wenn ich meinen Server 3 Tage lauffen habe dieser 9-10GB Arbeitsspeicher für die apache2 und php5-cgi Prozesse in Anspruch nimmt und die Anzahl dieser Prozesse liegt bei 4000-5000.
Das scheint mir angesichts der Konfiguration etwas viel zu sein oder liege ich falsch.
Hier meine Konfigurationsdateien.

apache2.conf
Code:
<IfModule mpm_worker_module>
	ThreadLimit 40
	ServerLimit 20
	StartServers 10
	MaxClients 400
	MinSpareThreads 20
	MaxSpareThreads 40
	ThreadsPerChild 40
	MaxRequestsPerChild   10000
</IfModule>

php-fcgi-starter
Code:
#!/bin/sh
PHPRC=/home/conf/
export PHPRC

# Define the number of PHP child processes that will be launched. 
# This is low to control memory usage on a server that might launch 
# these processes for lots of domains. 
# Leave undefined to let PHP decide
PHP_FCGI_CHILDREN=0
export PHP_FCGI_CHILDREN

# Maximum requests before a process is stopped and a new one is launched
PHP_FCGI_MAX_REQUESTS=500
#PHP_FCGI_MAX_REQUESTS=500
export PHP_FCGI_MAX_REQUESTS

# Launch the PHP CGI binary 
# This can be any other version of PHP which is compiled with FCGI support.
exec /usr/bin/php5-cgi

fcgid.conf
Code:
<IfModule mod_fcgid.c>
  AddHandler fcgid-script .fcgi
  SocketPath /var/lib/apache2/fcgid/sock
# IdleTimeout n (300 seconds)
# An idle fastcgi application will be terminated after IdleTimeout seconds.
IdleTimeout 600

# IdleScanInterval n (120 seconds)
# The scan interval for idle fastcgi applications.
IdleScanInterval 120

        # Lange IPCC Timeouts, damit es unter Last keine 500er gibt.
        IPCCommTimeout 1200
        IPCConnectTimeout 600
# MaxProcessCount n (1000)
# The max count of total fastcgi process count.
MaxProcessCount 500

# DefaultMaxClassProcessCount n (100)
# The maximum number of fastcgi application instances allowed to run for
# particular one fastcgi application. 
DefaultMaxClassProcessCount 500

# DefaultMinClassProcessCount n (3)
# The minimum number of fastcgi application instances for any one fastcgi
# application. 
# Idle fastcgi will not be killed if their count is less than n
# Set this to 0, and tweak IdleTimeout
DefaultMinClassProcessCount 50


        # Security
        PHP_Fix_Pathinfo_Enable 1
        # PHP Prozesse nach spaetestens 2,5 Stunden neu starten
        ProcessLifeTime 3600

        # Maximal X Score-Punkte, Score um 1 erhoehen bei Prozess-Spawn/Termination.
        SpawnScoreUpLimit 10
        SpawnScore 1
        TerminationScore 1
</IfModule>
 
Last edited by a moderator:
Hm, wieviele vhosts hast Du denn auf der Maschine laufen? Kannst Du da grob ne Aussage machen ... wieviele requests am Tag etc.... Damit man Deine Konfigruation etwas besser beurteilen kann...

Ich kenne das Problem auch mit suPHP / fastcgi, habe mir dann vorübergehend erstmal damit geholfen den apache via cron nachts neu zu starten.
 
@mk_michael
vhost war nur 1 vorhanden. Ich habe fcgi und den worker wieder entfernt.
Ich steige da nicht richtig durch bei der Konfiguration, ist etwas zu kompliziert.

@KingOfPimp
werde ich beim nächsten mal wenn ich wieder den Apache2 Worker benutze versuchen
 
Back
Top