Configuration d'Apache

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

eMule_Paradise
Nouveau WRInaute
 
Messages: 6
Inscription: Sam Nov 25, 2006 10:34

Configuration d'Apache

Message le Sam Nov 25, 2006 10:40

Bonjour,

Je possède un server dedié, Dual Xeon 3.2Ghz et dessus un site web qui génère énormement de traffic, site qui est a 80% en cache html :)
Aux heures de pointes apache crash souvent surement du a sa configuration ... on trouve pas beaucoup de documention pour les gros site donc peut être vous allez pouvoir m'aidez :roll:

J'vous donne le w de hier soir :
22:45:22 up 124 days, 4:59, 1 user, load average: 7.72, 7.33, 6.56

Le server-status qui va avec :

Current Time: Friday, 24-Nov-2006 22:48:29 CET
Restart Time: Friday, 24-Nov-2006 22:32:43 CET
Parent Server Generation: 0
Server uptime: 15 minutes 46 seconds
Total accesses: 955581 - Total Traffic: 1.8 GB
CPU Usage: u721.57 s102.22 cu0 cs0 - 87.1% CPU load
1010 requests/sec - 2.0 MB/second - 2051 B/request
1524 requests currently being processed, 0 idle servers


et celui de se matin,


Current Time: Saturday, 25-Nov-2006 10:39:11 CET
Restart Time: Saturday, 25-Nov-2006 02:00:02 CET
Parent Server Generation: 1
Server uptime: 8 hours 39 minutes 9 seconds
Total accesses: 11431224 - Total Traffic: 23.0 GB
CPU Usage: u517.17 s73.59 cu0 cs0 - 1.9% CPU load
367 requests/sec - 0.8 MB/second - 2158 B/request
1267 requests currently being processed, 118 idle servers


La configuration du httpd.conf :

ServerType standalone
Timeout 10
KeepAlive On
MaxKeepAliveRequests 80
KeepAliveTimeout 2
MinSpareServers 16
MaxSpareServers 32
StartServers 10
MaxClients 1524
MaxRequestsPerChild 100


En esperant que quelqu'un qui connait cette situation peut m'aider ;)
Merci


fandecine
Modérateur
Modérateur
 
Messages: 1640
Inscription: Sam Avr 02, 2005 14:58

Message le Sam Nov 25, 2006 10:45

Bonjour,

peut-tu nous poster (ou en MP) le resultat de ps aux, est-ce apache 1 ou 2, quel langage de scipt coté serveur (Php ?) etc...

Merci

eMule_Paradise
Nouveau WRInaute
 
Messages: 6
Inscription: Sam Nov 25, 2006 10:34

Message le Sam Nov 25, 2006 11:07

http://www.emule-paradise.com/ps.txt

Server Version: Apache/1.3.37 (Unix) mod_auth_passthrough/1.8 mod_log_bytes/1.2 mod_bwlimited/1.4 PHP/4.4.4 mod_ssl/2.8.28 OpenSSL/0.9.7a

Sinon le peu qui est pas en cache c'est du PHP/mySQL ...


rolriam
WRInaute impliqué
WRInaute impliqué
 
Messages: 363
Inscription: Mer Juin 15, 2005 8:26

Message le Sam Nov 25, 2006 11:20

Un filer serait peut-être bien : http://www.ovh.com/fr/produits/cluster.xml :D

eMule_Paradise
Nouveau WRInaute
 
Messages: 6
Inscription: Sam Nov 25, 2006 10:34

Message le Sam Nov 25, 2006 11:43

En effet, sa serait peut-être ... le peut être me gène :) Car nous avons changer plusiers fois de servers en peu de temp et sa me generais de changer encore.
Donc si tu as était dans une situation similaire et que sa a résolu ton problème, j'pense que j'ferais sa .... mais si tu dit sa sans vraiment être sur .... :roll:

Personne qui as eu se genre de problème ? Solution du filer résou tout ?


rolriam
WRInaute impliqué
WRInaute impliqué
 
Messages: 363
Inscription: Mer Juin 15, 2005 8:26

Message le Sam Nov 25, 2006 11:55

Non je n'ai pas de filer :D
Mais avec ton nombre de requetes web (donc apache), tu pourrais répartir les requêtes web sur différents serveurs avec ce système.

Sinon, tu peux essayer de mettre KeepAlive Off dans la config apache (par contre le cpu va en baver ) :?

Sinon, t'as combien en RAM sur ton serveur là ? Tu as mis 1524 en max clients (il faut environ 1524 x 10mo = 15240mo de RAM). Ca swappe nan ? :D

eMule_Paradise
Nouveau WRInaute
 
Messages: 6
Inscription: Sam Nov 25, 2006 10:34

Message le Sam Nov 25, 2006 12:07

Type Percent Capacity Free Used Size
Physical Memory 91% 190.25 MB 1.79 GB 1.98 GB
- Kernel + applications 62% 1.22 GB
- Buffers 4% 71.63 MB
- Cached 25% 510.35 MB
Disk Swap 0% 2.00 GB 560.00 KB 2.00 GB


Le KeepAlive correspond à quoi concrètement ?
J'sai sbien que le filer serait une bonne solution ( mais hyper couteuse ), donc j'essaye de savoir avant si quelqu'un qui as était dans ce cas aurait pas une solution .... car en plus le filer sa doit être technique quand même :)


rolriam
WRInaute impliqué
WRInaute impliqué
 
Messages: 363
Inscription: Mer Juin 15, 2005 8:26

Message le Sam Nov 25, 2006 12:14

Pour le keepalive : http://httpd.apache.org/docs/1.3/keepalive.html

Ton swap est plein, donc ça doit ramer...

eMule_Paradise
Nouveau WRInaute
 
Messages: 6
Inscription: Sam Nov 25, 2006 10:34

Message le Sam Nov 25, 2006 12:20

Non ma ram (2Go) est à 90% mais mon swap de 2Go est pas du tout utilisé ....

Merci pour la doc' j'vais essayer de comprendre sa ;)


rolriam
WRInaute impliqué
WRInaute impliqué
 
Messages: 363
Inscription: Mer Juin 15, 2005 8:26

Message le Sam Nov 25, 2006 12:24

Ah oui exact ton swap n'est pas utilisé presque :D

Par contre, aux heures de pointe, il doit se remplir (avec 1524 en MaxClients)


fandecine
Modérateur
Modérateur
 
Messages: 1640
Inscription: Sam Avr 02, 2005 14:58

Message le Sam Nov 25, 2006 15:34

En Fait ton probléme se situe au niveaux de la taille des processus apache. Lorsque apache tourne avec php, la taille de ces processus est au minimum de 10Mo voir plus selon ta config (modules apaches activés, config php) Donc tu est limité par la taille de la ram de ton serveur et lorsque ton MaxClient est atteint.... ça rame.

Dans le cas de taconfig, apache utilise un processus occupant au moins 1OMo de ram pour servir un gif de quelques ko alors qu'un processus apache standart de 3Mo suffirait.

La solution consiste à avoir deux serveurs (serveur ne veut pas dire machines) un configuré pour les processus léger (htm,css,js,jpg,gif) avec le strict necessaire en terme de modules apache, l'autre pour les processus lourds de type PHP.

Il est tout a fait possible de faire fonctionner deux instances d'apache sur la même machine (le serveur leger sur le port 80, le serveur lourd sur le port 8080) Toutes les requetes arrivent sur le serveur léger qui redirige les requetes sur des pages php vers le serveur lourd. Cela permet de multiplier le nombre de MaxClient par 2 ou 3 selon les config.

Je connais des développeurs qui utilisent deux instances d'apache pour faire cohabiter sur la même PHP4 et PHP5. (chaque version de php étant attachée à une instance apache)

Je peux t'assurer que cela fonctionne car j'utilise cette solution sur un serveur que j'ai en administration. J'utilise apache2 pour le serveur leger en mode multithread et apache1 pour le serveur lourd PHP (Car PHP ne fonctionne pas en mode multithread sous apache2). Mais il est possible de lancer deuc instances d'apache1. Le serveur léger peut également être autre chose qu'apache.

Maintenant, t'expliquer la marche à suivre sort du cadre de ce forum. Contacte moi par MP et je te donnerais plus d'infos.

ACth
WRInaute passionné
WRInaute passionné
 
Messages: 795
Inscription: Sam Nov 11, 2006 12:32

Message le Sam Nov 25, 2006 17:32

Les informations sont toujours bonne pour les autres ;)

si jamais il devait y en avoir d'autres qui puissent être expliquées par le biais du forum..

eMule_Paradise
Nouveau WRInaute
 
Messages: 6
Inscription: Sam Nov 25, 2006 10:34

Message le Sam Nov 25, 2006 18:28

Merci pour ces info fandecine, par contre une fois les 2 server http installer, comment fait tu pour utiliser soit l'un soit l'autre ? Tu indique à chaque fois le port dans l'URL ?


Je vais essayer de faire sa, une fois que j'aurais optimiser a fond mon httpd.conf car je pense qu'il n'est pas parfait ... J'ai passer le MaxRequestsPerChild à 50 mais sa crash encore même si sa va un peu plus vite ...


Current Time: Saturday, 25-Nov-2006 18:28:26 CET
Restart Time: Saturday, 25-Nov-2006 18:17:21 CET
Parent Server Generation: 0
Server uptime: 11 minutes 5 seconds
Total accesses: 502464 - Total Traffic: 936.6 MB
CPU Usage: u200 s27.38 cu0 cs0 - 34.2% CPU load
756 requests/sec - 1.4 MB/second - 1954 B/request
1503 requests currently being processed, 0 idle servers

:'(


//Edit, Comment faire pour que mes process apache soient sur une base de 3Mo et non 10Mo ... car le site est vraiment ultra en cache, les seules requête PHP sont légère ... ont le voit bien sur le server-status, la moyenne des requête est a peine d'1Ko :oops:


fandecine
Modérateur
Modérateur
 
Messages: 1640
Inscription: Sam Avr 02, 2005 14:58

Message le Sam Nov 25, 2006 20:03

eMule_Paradise a écrit:Merci pour ces info fandecine, par contre une fois les 2 server http installer, comment fait tu pour utiliser soit l'un soit l'autre ? Tu indique à chaque fois le port dans l'URL ?


En ajoutant une regle de redirection conditionelle dans le htacess du serveur répondant sur le port 80 vers le serveur répondant sur le port 8080 pour tout ce qui est du php.

eMule_Paradise a écrit:Edit, Comment faire pour que mes process apache soient sur une base de 3Mo et non 10Mo ... car le site est vraiment ultra en cache, les seules requête PHP sont légère ... ont le voit bien sur le server-status, la moyenne des requête est a peine d'1Ko :oops:


Ben, il faut pas de php! Si tu regarde la taille de tes processus juste aprés le démarrage d'apache et quelques heures plus tard tu constatera qu'elle a augmenté. Apache ne siat pas diminuer la taille alloué à un processus lorsqu'il le réutilise, seulement l'augmenter. Faut faire avec...

Mais si ton serveur léger ne doit servir que des fichiers html,jpf,js,css ... la taille de chaque process ne devrait pas dépasser 4 Mo.


fandecine
Modérateur
Modérateur
 
Messages: 1640
Inscription: Sam Avr 02, 2005 14:58

Message le Lun Nov 27, 2006 15:26

Je viens de poster une réponse globale aux problèmes de configuration apache dans ce post:

http://www.webrankinfo.com/forums/viewtopic_63439.htm

Configuration d'Apache

Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités