2 votes

Apache many httpd process by my own server IP ? eating all my Ram

Je viens d'acheter un nouveau serveur dédié, je n'ai aucune expérience de Linux, mais j'essaie d'apprendre.

J'ai testé le serveur pendant quelques jours. J'améliore le httpd.conf my.cnf pour de meilleures performances, etc.

J'ai remarqué que mon serveur atteignait la valeur MaxClient en quelques secondes, et évidemment mon site commençait à se charger très lentement.

J'ai donc vérifié sur le net pour voir combien de processus httpd étaient ouverts par la même IP :

  # netstat -ntu | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

netstat results showing 58 connections from my server's own IP address

J'ai pensé que mon serveur pouvait faire l'objet d'une attaque TCP SYN, mais je me suis rendu compte que l'IP était mon propre serveur. Je ne comprends donc vraiment pas ce qui se passe.

Le serveur fonctionne bien, il répond parfaitement, utilise 30 % de la RAM et 15 % du CPU, et soudain, mon propre serveur ouvre plusieurs processus httpd en même temps, et chaque processus prend environ 1,5 % de la RAM totale. Il passe donc de 40 clients à plus de 120 clients en quelques minutes.

Si vous avez des conseils à me donner, je vous en serais reconnaissant. J'utilise linux depuis trois jours seulement. A ce stade, je suis un peu perdu.

2voto

Paweł Brodacki Points 6411

Ça ne ressemble pas à un problème de Linux, mais à un problème d'Apache.

Que disent vos journaux ?

S'agit-il d'un site qui fonctionnait auparavant et qui est maintenant déplacé sur une autre machine, ou êtes-vous en train d'en créer un nouveau ? S'il s'agit d'un ancien site, la connexion de votre propre IP à votre site est-elle normale ?

netstat -ntu --program vous indiquera quel programme se connecte au port 80.

Je suppose que votre site héberge quelque chose de plus que des pages statiques. Essayez de trouver quelle est la configuration minimale (modules/hôtes virtuels/applications) nécessaire pour reproduire le problème. Cela vous aidera à réduire la zone de dépannage.

0voto

coolhz Points 31

Essayez de désactiver mod_status (en particulier la directive ExtendedStatus) et voyez si le nombre de connexions de votre propre serveur à lui-même diminue, je pense que ExtendedStatus frappe apache depuis localhost pour déterminer certains de ses compteurs.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X