nichtbenutze httpd2-prefork neu starten

conym18

Member
hallo zusammen,

ich habe gerade den adserver openx installiert und ein wenig damit rumgespielt.


derzeit greifen keine clients/user auf den server zu.

beim starten des servers hatte ich noch knapp 400MB frei.
nachdem ich kampangen im openx hinzugefügt habe und ein paar banner, ist nun der server nurnoch mit 275 MB frei.


wie gesagt, ich bin gerade allein auf dem server.

lt. top gibt es aber noch httpd2-prefork prozesse, welche wertvollen speicher belegen.

hier mein aktuelles top:

Code:
19879 wwwrun    15   0  279m  41m 3992 S    0  8.1   0:02.57 httpd2-prefork
26352 wwwrun    15   0  281m  40m 4968 S    0  7.9   0:14.60 httpd2-prefork
19741 wwwrun    16   0  275m  37m 4044 S    0  7.4   0:09.10 httpd2-prefork
26607 psaadm    15   0  179m  35m  21m S    0  7.0   0:09.36 httpsd
24497 wwwrun    16   0  273m  35m 3992 S    0  7.0   0:02.29 httpd2-prefork
21733 wwwrun    16   0  269m  32m 4008 S    0  6.3   0:05.15 httpd2-prefork
18023 psaadm    16   0  178m  31m  18m S    0  6.2   0:06.45 httpsd
17867 root      16   0  249m  14m 7444 S    0  2.8   0:01.44 httpd2-prefork



wie bekomme ich nun den apache dazu, den speicher wieder frei zu geben?
standardmäßig wird ja jeder httpd2-prefork prozess bei 10 MB gestartet.


ich meine, ich könnte per plesk veranlassen, dass statt 3600 sek. aller 360 sek. der apache neu gestartet wird, aber gibt es keine andere lösung?


danke
 
Einfach in httpd.conf (oder apache2.conf, je nach Distro) die Settings ändern:

Code:
# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_prefork_module>
    StartServers       3
    MinSpareServers    2
    MaxSpareServers    5
    MaxClients        40
    MaxRequestsPerChild   0
</IfModule>
Die Settings hier sind nur Beispielhaft, also nicht einfach blind kopieren. Bei deinem Problem sind das die Werte für MinSpareServers bzw. MaxSpareServers, jedoch auch StartServers und MaxRequestsPerChild.
Solltest dich auf jeden Fall mal mit der Apache config vertraut machen bevor du loslegst, da falsche Werte ziemlich ins Auge gehen können. Threads in dieser Richtung (Apache optimierung) solltest du hier zur genüge finden...;)
 
Last edited by a moderator:
Folgermaßen schaut meine Config aus:

Code:
# prefork MPM
<IfModule prefork.c>
        # number of server processes to start = 1
        # http://httpd.apache.org/docs/2.2/mod/mpm_common.html#startservers
        StartServers            1
        # minimum number of server processes which are kept spare = 1
        # http://httpd.apache.org/docs/2.2/mod/prefork.html#minspareservers
        MinSpareServers         1
        # maximum number of server processes which are kept spare = 5
        # http://httpd.apache.org/docs/2.2/mod/prefork.html#maxspareservers
        MaxSpareServers         5
        # highest possible MaxClients setting for the lifetime of the Apache process. = 10
        # http://httpd.apache.org/docs/2.2/mod/mpm_common.html#serverlimit
        ServerLimit            20
        # maximum number of server processes allowed to start = 10
        # http://httpd.apache.org/docs/2.2/mod/mpm_common.html#maxclients
        MaxClients             20
        # maximum number of requests a server process serves = 250 - 1000
        # http://httpd.apache.org/docs/2.2/mod/mpm_common.html#maxrequestsperchild
        MaxRequestsPerChild   5000
</IfModule>


Welche Werte sollte ich nun deiner Meinung ändern, welche mein Problem lößt?
 
Code:
MaxSpareServers         5
Sollte eigentlich selbsterklärend sein.
 
Sorry wenn ich das jetzt schreiben muß:

Wer lesen kann ist klar im Vorteil :)


Das ist mir ja schon klar, aber meine Frage war eine andere.
 
Sorry wenn ich das jetzt schreiben muß:

Wer lesen kann ist klar im Vorteil :)
Wer Zusammenhänge erkennen kann ebenfalls.

1. Du hast 5 relevante laufende httpd2-prefork Prozesse. Das deckt sich mit deiner Konfiguration.

2. Du hast noch 275 MB Speicher frei. Was nützt dir unbenutzter Speicher?
 
Back
Top