IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Performances : configurer au mieux apache2.conf


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2007
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2007
    Messages : 186
    Par défaut Performances : configurer au mieux apache2.conf
    Bonjour =)

    Je suppose que le sujet revient assez souvent, et pour cause, j'ai l'impression que ce n'est pas une mince affaire que de régler au mieux son serveur apache :p (et mysql dans la foulé, mais ce n'est pas le bon forum ^^)

    J'ai lu le plus possible de fils de discussion, des manuels sur les différentes variables du fichier, mais j'en reste a ne pas réussir a le configuré au mieux.

    Depuis la dernière mise a jour de notre site (essentiellement graphique), le serveur a montré de gros signe de fatigues. Mémoire RAM complètement saturé, accès impossible (j'ai même du demander un reboot matériel il y a peu) ...

    Actuellement, le serveur fonctionne très bien avec cette configuration, mais pas longtemps ^^ La RAM se remplie de plus en plus, jusqu'à arrivé a saturation. A partir de là il accumule la charge et ça devient l'enfer. Le seul moyen potable est de redémarrer le serveur apache régulièrement (ce en vient a très souvent sur l'échelle de la journée ...) Ouaip, ce n'est pas propre du tout :/

    Le site et son trafic:
    Donc, pour résumer nos pages sont assez lourdes, pour environ 5000 visiteurs / jours pour 50 000 à 70 000 pages vues / jours.

    Le serveur:

    • Intel Core2Duo 2x 2.66+ GHz 64bits
    • 4 Go DDR2
    • DD SATA2
    • 2 Go pour le Swap


    Voilà a quoi peut ressembler le top lorsque le serveur sature:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    top - 18:22:44 up 76 days, 16:07,  1 user,  load average: 37.06, 41.05, 40.67
    Tasks: 385 total,   2 running, 383 sleeping,   0 stopped,   0 zombie
    Cpu(s):  1.0%us, 26.0%sy,  0.0%ni,  0.0%id, 72.4%wa,  0.2%hi,  0.5%si,  0.0%st
    Mem:   4019728k total,  4004732k used,    14996k free,     8760k buffers
    Swap:  2088432k total,  2088428k used,        4k free,    65448k cached
     
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                         
      271 root      15  -5     0    0    0 D   10  0.0 172:16.75 kswapd0                                                                                                                                                                         
    13898 dtc       20   0  252m  19m 2804 D    4  0.5   1:39.32 apache2                                                                                                                                                                         
    13730 dtc       20   0  250m  19m 2700 D    3  0.5   1:52.23 apache2                                                                                                                                                                         
     3553 dtc       20   0  242m  14m 2720 D    3  0.4   1:26.61 apache2                                                                                                                                                                         
     3619 dtc       20   0  241m  14m 2652 D    3  0.4   1:11.31 apache2                                                                                                                                                                         
    11714 amavis    20   0  210m  30m 2084 D    3  0.8   0:43.06 amavisd-new                                                                                                                                                                     
    13686 dtc       20   0  244m  17m 2752 D    3  0.4   1:41.01 apache2                                                                                                                                                                         
    13763 dtc       20   0  248m  20m 2764 D    3  0.5   1:45.85 apache2                                                                                                                                                                         
    13820 dtc       20   0  247m  14m 2712 D    3  0.4   1:35.61 apache2                                                                                                                                                                         
    23694 mysql     20   0  572m  93m 2996 S    3  2.4 412:45.80 mysqld                                                                                                                                                                          
     3775 dtc       20   0  248m  21m 2716 D    2  0.6   1:35.95 apache2                                                                                                                                                                         
    13751 dtc       20   0  238m  13m 2700 D    2  0.3   1:39.63 apache2                                                                                                                                                                         
    13802 dtc       20   0  251m  22m 2708 D    2  0.6   1:46.48 apache2                                                                                                                                                                         
    13925 dtc       20   0  252m  18m 2688 D    2  0.5   1:37.41 apache2                                                                                                                                                                         
    13713 dtc       20   0  249m  21m 2716 D    2  0.5   1:38.63 apache2                                                                                                                                                                         
    13897 dtc       20   0  247m  20m 2744 D    2  0.5   1:44.38 apache2                                                                                                                                                                         
    13714 dtc       20   0  246m  13m 2672 D    1  0.4   1:44.72 apache2                                                                                                                                                                         
    13836 dtc       20   0  248m  18m 2680 D    1  0.5   1:39.00 apache2                                                                                                                                                                         
    13673 dtc       20   0  230m 5764 2708 S    1  0.1   1:17.63 apache2                                                                                                                                                                         
    13946 dtc       20   0  244m  11m 2664 D    1  0.3   1:15.22 apache2                                                                                                                                                                         
     3527 dtc       20   0  232m 7924 2748 S    0  0.2   1:05.24 apache2                                                                                                                                                                         
     3611 dtc       20   0  252m  17m 2720 S    0  0.4   1:48.07 apache2                                                                                                                                                                         
     3615 dtc       20   0  244m  18m 2752 D    0  0.5   1:31.34 apache2                                                                                                                                                                         
     3773 dtc       20   0  249m  13m 2712 D    0  0.3   1:26.73 apache2                                                                                                                                                                         
    13675 dtc       20   0  238m  14m 2704 S    0  0.4   1:41.43 apache2                                                                                                                                                                         
        1 root      20   0 10308  192  164 S    0  0.0   0:24.60 init                                                                                                                                                                            
        2 root      15  -5     0    0    0 S    0  0.0   0:11.66 kthreadd                                                                                                                                                                        
        3 root      RT  -5     0    0    0 S    0  0.0   0:00.98 migration/0                                                                                                                                                                     
        4 root      15  -5     0    0    0 S    0  0.0   0:51.03 ksoftirqd/0                                                                                                                                                                     
        5 root      RT  -5     0    0    0 S    0  0.0   0:01.12 migration/1 
    [...]
    La RAM est pleine, le swap aussi ...

    La configuration de apache2.conf:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    Timeout 60
    KeepAlive On
     
    MaxKeepAliveRequests 35
    KeepAliveTimeout 15
     
    <IfModule mpm_prefork_module>
        StartServers           5 
        MinSpareServers       70 
        MaxSpareServers      300 
        ServerLimit          512 
        MaxClients           328 
        MaxRequestsPerChild 3000 
    </IfModule>
     
    <IfModule mpm_worker_module>
        StartServers           5
        ServerLimit          512
        MaxClients           328
        MinSpareThreads       70
        MaxSpareThreads      300
        ThreadsPerChild       75
        MaxRequestsPerChild 3000
    </IfModule>
    J'ai tenter de baisser de plus en plus MaxKeepAliveRequests afin de réduire la consommation de ressources, mais sans grands résultats :/

    D'ailleurs, est-ce normal que la RAM soit autant remplie jusqu'à aller a saturer ?
    (Nos connexions a mysql sont bien fermé et Cie ^^)

    Donc si vous pouviez me donner un coup de pouce ^^ Merci beaucoup!

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    C'est quoi derrière, comme pages ? De bons vieux fichiers .html ou du PHP, Tomcat ou autre ?

    Tu as identifié que le problème est survenu à la mise en place de la nouvelle version : en quoi cette version diffère de la précédente ? En gros, qu'est-ce qui pourrait expliquer le problème dans cette nouvelle version ?

    Est-ce que le nombre de visiteurs a beaucoup augmenté entre les 2 versions ?

    Avec top ou ps, essaie de trouver quels sont les processus les plus gourmands en mémoire.

  3. #3
    Membre confirmé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2007
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2007
    Messages : 186
    Par défaut
    Bonjour,
    C'est du bon PHP, Modèle vue contrôleur et cie, assez imposants donc.

    Tu as identifié que le problème est survenu à la mise en place de la nouvelle version : en quoi cette version diffère de la précédente ? En gros, qu'est-ce qui pourrait expliquer le problème dans cette nouvelle version ?
    La seule différence notable entre les deux version est un habillage beaucoup plus lourd, de beaux png etc ...

    Est-ce que le nombre de visiteurs a beaucoup augmenté entre les 2 versions ?
    Pas du tout, toujours la même fréquentation =)

    Avec top ou ps, essaie de trouver quels sont les processus les plus gourmands en mémoire.
    Alors sur ce point je ne sais que dire ^^ Les processus ne sembles pas gourmand, 3/4% pour mysql, une dizaine de processus apache2 avec grand max 1% de la mémoire chacun :/

    =)

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Qu'est-ce qui mange toute la mémoire, dans ce cas ? Le fait que toute la mémoire soit occupée n'est pas gênant en soi, certains noyaux Linux réservent dès le départ toute la mémoire à l'avance pour faire du cache ou des choses comme ça et l'attribue au fur et à mesure. En revanche, le fait que le swap soit plein, c'est plus que préoccupant. Il faut que tu trouves ce qui occupe ce swap et malheureusement, je ne sais pas comment faire

  5. #5
    Membre confirmé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2007
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2007
    Messages : 186
    Par défaut
    Mouaip, quand le serveur occupe toute la RAM il ne monte pas directement en charge oui, on peux donc supposer sans risque qu'il la réserve a l'avance (peut-être pour cette raison que les processus n'affiche pas cette part de ram utilisé ?)

    Il faut que tu trouves ce qui occupe ce swap et malheureusement, je ne sais pas comment faire
    Ça c'est dommage héhé ^^

    Par exemple, a l'heure actuelle la RAM n'est pas saturé (je vient juste de reboot apache2 pour voir), la charge est en dessous de 1 (elle était a 5/6 tout a l'heure, c'est pour ça que j'ai redémarrer apache et voir l'incidence) mais il y a de forts lag en ssh, afficher un "top" est super lent par exemple. Mais il répond assez vite en http (pages du sites). Surement un problème différent a ne pas forcément prendre en compte pour le sujet du topic.

    :p

  6. #6
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Les lenteurs peuvent éventuellement s'expliquer par le swap : le serveur passe son temps à lire et écrire sur le disque au lieu d'utiliser la mémoire vive, ce qui ralentit le système. Les SSH lent, j'ai la même chose sur mes VM quand ça swape à fond, justement. Pour info, j'aurais taillé la partition de swap à 4 Go (= la RAM) mais ça n'explique en rien le problème et ne le résoudra pas définitivement.

    Quand tu arrêtes Apache, la swap se vide d'un coup et tout va plus vite ?

Discussions similaires

  1. Probléme avec le fichier apache2.conf.
    Par mohashow dans le forum Applications et environnements graphiques
    Réponses: 8
    Dernier message: 12/04/2010, 00h02
  2. configuration de apache2.conf
    Par mathieuIRIS dans le forum Applications et environnements graphiques
    Réponses: 6
    Dernier message: 06/10/2008, 16h29
  3. Configuration de apache2.conf
    Par AmBee dans le forum Réseau
    Réponses: 7
    Dernier message: 27/03/2008, 18h11
  4. Apache2.conf ou httpd.conf ?
    Par kippix dans le forum Apache
    Réponses: 7
    Dernier message: 28/01/2007, 12h54
  5. [C#] Performance : c'est mieux un tableau ou un ArrayList?
    Par trotters213 dans le forum Windows Forms
    Réponses: 14
    Dernier message: 31/03/2005, 11h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo