DEDIBOX-NEWS.COM

Le Forum Non Officiel de la DEDIBOX

Vous n'êtes pas identifié.

#1 2007-10-30 19:43:48

Mogui
D'honneur de membre
Lieu: 92 et 67
Date d'inscription: 2006-05-28
Messages: 1631
Site web

Apache, je vais le fumer !

Salut,

Je poste car je commence serieusement a en avoir marre de apache.

Sur Kelio.org, toute les 6heures environ, apache2.2.3 se met a consommer toute la mémoire et le swap disponible..
Et de ce fait, les accès disque sont très nombreux, les sites ne répondent plus, tout est lent ..

Je pensais que cela venait d'un manque de mémoire sur notre serveur (un kimsufi :p), on à donc migré vers un serveur plus puissant, avec disque SATA2, et surtout 1Go de ram DDR2.

L'ennui, c'est que celà recommence sad

Pourtant, quand apache2 à commencé à s'emballer, il ne devait y avoir qu'une dizaines de personnes.
Sachant que l'utilisation mémoire pour un script est limité a 16Mo, on peux conclure qu'il y a un truc qui cloche ? .. sad

# 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 mp
m_prefork_module>
    StartServers         1
    MinSpareServers      1
    MaxSpareServers      7
    MaxClients           150
    MaxRequestsPerChild  1000
</IfModule>

# worker MPM
# StartServers: initial number of server processes to start
# MaxClients: maximum number of simultaneous client connections
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadsPerChild: constant number of worker threads in each server process
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_worker_module>
    StartServers          8
    MaxClients           50
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadsPerChild      25
    MaxRequestsPerChild   0
</IfModule>

Un petit top, au moment ou apache faisait la geule :

top - 19:03:20 up 14 days, 22:56,  1 user,  load average: 56.52, 58.97, 39.29
Tasks: 129 total,   2 running, 120 sleeping,   0 stopped,   7 zombie
Cpu(s): 16.4%us,  3.2%sy,  0.0%ni,  0.0%id, 79.1%wa,  0.3%hi,  1.0%si,  0.0%st
Mem:   1022844k total,   969064k used,    53780k free,    13760k buffers
Swap:  2048276k total,  2047684k used,      592k free,    33128k cached

Et l'erreur reporté par apache2 :

[Tue Oct 30 18:51:58 2007] [error] (12)Cannot allocate memory: fork: Unable to fork new process

Bien-sur, on peux voir  qu'il n'y à plus de ram disponible roll

J'ai lu sur un forum en anglais, que ca pouvait provenir des processus apache2 qui ne se coupent pas
Enfin, my english is not good yikes

Et il devait y avoir une bonne 30aine de processus apache2 lancés..

Il se trouve, qu'il me suffit de restart apache2 pour que tout refonctionne comme sur des roulettes

Donc voila, i need ur help !
Merci !

Dernière modification par Mogui (2007-10-30 19:48:05)


Les gens normaux... croient que si ça marche, c'est qu'il n'y a rien à réparer.
Les ingénieurs croient que si ça marche, c'est que ça ne fait pas encore assez de choses.

Hors ligne

 

#2 2007-10-30 19:47:43

highleaf
Petit scarabé
Date d'inscription: 2007-04-25
Messages: 60

Re: Apache, je vais le fumer !

Bonjour,

Sur quel système le apache tourne-t-il ? un Linux ou BSD ? Quel genre de scripts tournent dessus ? cgi, php ?

Hors ligne

 

#3 2007-10-30 19:48:26

Mogui
D'honneur de membre
Lieu: 92 et 67
Date d'inscription: 2006-05-28
Messages: 1631
Site web

Re: Apache, je vais le fumer !

Debian Etch stable

Désolé, j'ai oublié de préciser


Les gens normaux... croient que si ça marche, c'est qu'il n'y a rien à réparer.
Les ingénieurs croient que si ça marche, c'est que ça ne fait pas encore assez de choses.

Hors ligne

 

#4 2007-10-31 08:42:39

Pooly
Membre
Date d'inscription: 2007-08-03
Messages: 35
Site web

Re: Apache, je vais le fumer !

Bizaremment j'ai un probleme similaire, 2 a 3 fois par mois, Apache commence a bouffer 400Mo de mémoire au lieu des 20Mo habituel. J'ai pas encore trouvé de solution, a part baisser le nombre maximal de requetes par process.

Hors ligne

 

#5 2007-10-31 08:56:10

Cristal
Jeidi
Lieu: France
Date d'inscription: 2006-10-24
Messages: 129
Site web

Re: Apache, je vais le fumer !

<IfModule mp
m_prefork_module>
    StartServers         1
    MinSpareServers      1
    MaxSpareServers      7


C'est pas assez ça !

Hors ligne

 

#6 2007-10-31 11:44:27

Mogui
D'honneur de membre
Lieu: 92 et 67
Date d'inscription: 2006-05-28
Messages: 1631
Site web

Re: Apache, je vais le fumer !

J'ai trouvé ca dans une conf apache, deja que je n'y connais rien aux deux configs plus haut, je l'ai rajouté en utlisant plus ou moins les meme valeurs que le prefork

# perchild MPM
# NumServers ........... constant number of server processes
# StartThreads ......... initial  number of worker threads in each server process
# MinSpareThreads ...... minimum  number of worker threads which are kept spare
# MaxSpareThreads ...... maximum  number of worker threads which are kept spare
# MaxThreadsPerChild ... maximum  number of worker threads in each server process
# MaxRequestsPerChild .. maximum  number of connections per server process (then it dies)
<IfModule perchild.c>
NumServers           5
StartThreads         5
MinSpareThreads      5
MaxSpareThreads     10
MaxThreadsPerChild  20
MaxRequestsPerChild  0
AcceptMutex fcntl
</IfModule>

On verra bien..
Tiens, si d'ailleurs quelqu'un à un lien vers une doc francaise à propos des processus apache, je ne dirais pas non smile


Edit : J'ai rien dis, je suis en prefork :
http://httpd.apache.org/docs/2.2/mpm.html

Donc le worker et perchild ne servent à rien.

Dernière modification par Mogui (2007-10-31 12:07:56)


Les gens normaux... croient que si ça marche, c'est qu'il n'y a rien à réparer.
Les ingénieurs croient que si ça marche, c'est que ça ne fait pas encore assez de choses.

Hors ligne

 

Pied de page des forums

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson