FAQ non-officielle serveurs dédiés OVH ( peut servir pour d'autres serveurs)

Catégories de la FAQ :
Recherche :
Réglage des processus httpd et RAM par Octave (long)

Salut, Certains d'entre vous rament comme pas 2 pour bien configurer apache. au finale ils crashent des machines car ça part en couille. Avant tout intervetion dans httpd.conf et sur les parametres LISEZ le faq.txt qu'on vous a envoyé. ça va vous prendre 5 minutes et eviter une panne d'1h ou plus. 2ème étape c'est de lire la doc d'apache. 3ème étape: si ça ne marche toujours pas, cet email devrait vous aider. Timeout 300 c'est le timeout de la connexion facile. au bout 300 sec si le client ne fait rien serveur ferme la connexion KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 15 keep alive permet de faire plusieurs requetes avec une connexion (requete <-> connexion) sans keep alive client ----> serveur j'ouvers la connexion (un slot) client ----> serveur j'envoie la requete GET /index.html HTTP/1.0 etc etc client <---- serveur j'envoie le resultat de la requete client xxxxx serveur connexion fermée client ----> serveur j'ouvers la connexion (un slot) client ----> serveur j'envoie la requete GET /index.html HTTP/1.0 etc etc client <---- serveur j'envoie le resultat de la requete client xxxxx serveur connexion fermée avec keep alive client ----> serveur j'ouvers la connexion (un slot) client ----> serveur j'envoie la requete GET /index.html HTTP/1.0 etc etc client <---- serveur j'envoie le resultat de la requete client ----> serveur j'envoie une 2ème requete dans le même slot client <---- serveur j'envoie le resultat de la requete client ----> serveur j'envoie une 2ème requete dans le même slot client <---- serveur j'envoie le resultat de la requete client ----> serveur j'envoie une 2ème requete dans le même slot client <---- serveur j'envoie le resultat de la requete client ----> serveur j'envoie une 2ème requete dans le même slot client <---- serveur j'envoie le resultat de la requete client ----> serveur j'envoie une 2ème requete dans le même slot client <---- serveur j'envoie le resultat de la requete client xxxxx serveur connexion fermée dans le 1er cas il y a eu 2 connexions et 2 requetes dans le 2ème cas il y a eu 1 connexions et plusieurs requetes. si là vous avez bien compris on passe aux choses serieusses. MinSpareServers 10 MaxSpareServers 20 StartServers 15 définition de nombre de slot predemarré et prêt à accepter les connexions puis des requetes. on s'en fout un peu, mais il veut mieux le mettre ram/4 environ. dans tous les cas apache gere ça sans se soucier beaucoup de ça. plus difficile est là MaxClients 20 c'est le nombre de connexion (slot) possible en même temps. MaxRequestsPerChild 2 c'est le nombre de requetes fait sur un slot après lesquels un slot sera tué. une petite explication: rarement vous aurez sur votre machine (superplan par exemple) plus que 30 connexions simu. donc ce n'est pas la peine de mettre des chiffres genre 100. si vous le faites qu'est-ce qui va se passer ? vous allez swapper pour rien puisqu'apache creera des slots pour une ou 2 connexions et ne pourra jamais les tuer rapidement (à cause de MaxRequestsPerChild). vous allez vous retrouver avec une ram explosé. et si je laisse 30 ça va rammer ? non, car apache gera et devra utiliser les slots libres encore (!!!) au lieu d'en créer des slots pour rien. oui c'est un peu bizarre mais c'est comme ça. concernant MaxRequestsPerChild, ça permet de proteger apache pourqu'il ne prenne pas trop de ram. si MaxRequestsPerChild est très grand qu'est-ce qui se passe ? vous allez swapper. exemple precis avec MaxRequestsPerChild 300000: 1ere connexion sur un slot, un fichier html (ça va) 2ème connexion sur ce même slot, un php qui va prendre 8Mo à partir de ce moment là ce slot va prendre 8Mo pour TOUTES les connexions suivantes même s'il en a pas besoins. 29999 connexion votre slot prend le MAX(ram de toutes les connexions) 30000 il est tué et libere toute la ram si MaxRequestsPerChild est très très petit genre 1 ça voudra dire que à chaque connexion au slot juste après slot est tué. vous allez bouffer un peu plus de CPU. si vous faites moins de 20 req/sec on s'en fout car c'est pas assez pour voir la difference. rappelons qu'à chaque fois qu'un slot est tué, apache cree un nouveau s'il est necessaire. il y a un algo qui prend en compte les valeurs: MinSpareServers 10 MaxSpareServers 20 StartServers 15 donc par exemple prennons le cas de ns308 qui a 128ram et moins de 2req/sec et un gros script php: en mettant Maxclient à 20 on ne va jamais avoir le sentiment que ça rame puisqu'il y a jamais pas plus que 6-7 connexions simu. en mettant MaxRequestsPerChild à 2 apache tuera toutes les 2 connexions le slot et libera les 22% de ram qui sont pris par le script php. il faut que le maxclient soit en plus relativement petit pour obliger apache à utiliser les vieux slot justement pourqu'il les tue regulierement. on verra donc l'utilisation de la ram suivante: 37Mo 45Mo 55Mo .. 88Mo 46Mo (ça y est apache a tué le slot qui a pris trop de ram) 56Mo 78Mo 34Mo (youpi !!) ... etc etc une autre solution est d'écrire le script php mieux ou par exemple le mettre en suexec et l'executer à l'exterieur d'apache. et oui les avantages de suexec sont énormes :))) voilà voilà si vous êtes arrivés jusqu'au là et vous avez tout pigé alors vous aurez des serveurs web superbe qui ne planteront pas :) si un truc n'est pas claire n'hésitez pas poser des questions, il vaut mieux poser une questions conne que faire une connerie ;))) si vous voyez des erreurs dans l'explications ou j'ai dit des choses inexactes n'hésitez pas rectifier. je me suis basé sur mon experiance et le feeling uniquement :) Amicalemetn Octave

Format imprimable - Il y a 0 commentaires pour cette faq (Ajouter - Lire les commentaires)
IMPORTANT : At-infor.com ne peut être tenu responsable pour un quelconque dégât provoqué sur votre serveur.
Il ne tient qu'a vous de vérifier les informations contenues dans cette FAQ.
Cette FAQ contient des extraits de la ml sd@ml.ovh.net qui peuvent vous être utiles.
Basé sur Whatdafaq & modifié par At-infor.com - Retour a la page d'accueil - WhatDaFaq Admin
Hébergement offert par OVH