• User Attivo

    Apache2 - processi che aumentano di numero

    Allora, il problema e' questo...
    Sul mio sito (WordPress, quindi PHP) ho un link creato da un plugin. Quando qualcuno clicca su quel link (ma non sempre) nascono due nuovi processi di Apache2. Me ne sono accorto per caso con la shell aperta e top mentre ci lavoravo sopra. Lo strano e' che succede ogni due o tre click. Se smetto di cliccarci, i processi non si generano, se ricomincio, ricominciano a generarsi. Di solito due alla volta. Il problema e' che questi processi figli non muoiono mai...
    Da cosa dipende? Nell'apache2.conf ho questo:

    <IfModule mpm_prefork_module>
    StartServers 2
    MinSpareServers 2
    MaxSpareServers 5
    MaxClients 100
    MaxRequestsPerChild 0
    </IfModule>

    Non dovrebbero diventare al max 6 i processi (1 + 5 figli)?
    Come posso fare in modo che non crescano piu'? O ammazzarli se superano un certo numero...


  • User Attivo

    Ciao Salatti.NET 🙂
    secondo me non devi preoccuparti troppo, dopo la disconnessione dei client e la chiusura dei socks in time_wait i vari figli non più utilizzati dovrebbero sparire.. peraltro hai impostato un numero abbastanza basso, gestibile agevolmente anche per un sistema molto limitato.
    Tieni presente però che con > MaxRequestsPerChild 0 ogni processo figlio potrà così gestire un numero infinito di richieste e forse è questo che ti converrebbe limitare. 😉
    :ciauz:


  • User Attivo

    A quanto mi conviene impostare quel valore?


  • User Attivo

    MaxRequestsPerChild: the number of requests each child process is

    allowed to process before the child dies. The child will exit so

    as to avoid problems after prolonged use when Apache (and maybe the

    libraries it uses) leak memory or other resources. On most systems, this

    isn't really needed, but a few (such as Solaris) do have notable leaks

    in the libraries. For these platforms, set to something like 10000

    or so; a setting of 0 means unlimited.

    Ho visto che su molte macchine, probabilmente di default, è impostato a 10000, ma sono server dedicati su cui gira unicamente Apache. Io su server modesti ho impostazioni che variano tra 100 e 1000; potresti iniziare con un valore basso come 50 o 100 per tenerlo d'occhio ed aumentarlo in caso di bisogno e/o performance deludenti.


  • User Attivo

    Ok! Grazie mille!!