2 votes

L'ajout de Drupal à mon serveur signifie qu'il a maintenant des problèmes de performance

J'ai un forum vb 3.8.4 et un site drupal pressflow 6.22 sur mon serveur d'hébergement.

Lorsque j'ai ajouté le site drupal au serveur j'ai eu beaucoup de problèmes de performance sur le serveur

Et parfois, le serveur s'arrête

Voici les spécifications du serveur hôte :

  • Système d'exploitation CentOS Linux 5.5
  • Webmin version 1.560
  • Noyau et CPU Linux 2.6.18-194.26.1.el5 on x86_64 Informations sur le processeur Intel(R) Pentium(R) Dual CPU E2160 @ 1.80GHz, 2 cœurs
  • Mémoire réelle 3,74 Go au total, 2,35 Go utilisés Mémoire virtuelle 4 Go au total, 124 Ko utilisés
  • Espace disque local 1,76 TB au total, 147,63 GB utilisés

Voici la configuration de base d'Apache :

  • Apache MPM Prefork
  • HostnameLookups Désactivé
  • AllowOverride Aucun
  • MaxClients 100
  • Nombre de fils par enfant 25
  • StartServers 8
  • MaxRequestsPerChild 4000
  • mod_deflate est activé
  • mod_expires est activé

Voici les paramètres de base de php.ini :

  • safe_mode = on
  • max_execution_time = 1200
  • max_input_time = 1200
  • limite_mémoire = 1500M

Voici les paramètres mysql :

  • max_allowed_packet=3G
  • max_connections=200
  • wait_timeout=30
  • thread_cache=50
  • connect_timeout=30
  • query_cache_limit=1M
  • interactive_timeout=30

Voici le top résultat de la commande cpu :

enter image description here

Voici le free -m y iostat le résultat des commandes :

enter image description here

Voici le mysqladmin -u root -p ext -ri 30 | grep tmp_disk_tables résultat de la commande :

  • | Créé_tmp_disk_tables | 1771 |
  • | Tables_de_disques_créés | 2 |
  • | Tables_de_disques_créés | 5 |
  • | tables_tmp_disque_créé | 3 |
  • | Tables_de_disques_créés | 7 |
  • | Créées_tmp_disk_tables | 0 |

Nous avons installé : ffmpeg,gd libraries et zend optimizer

La charge moyenne du processeur est toujours supérieure à 3

Quelqu'un peut-il m'aider ?

Si vous avez besoin d'informations supplémentaires, n'hésitez pas à les demander dans les commentaires.

4voto

BMDan Points 7059

Vous disposez d'une limite de mémoire de 3,5 Go ( memory_limit = 3500M ), et sont potentiellement en train de démarrer 256 serveurs ( MaxClients 256 ). Cela porte votre consommation potentielle totale de mémoire à un peu moins de 900 Go. À moins que vous ne disposiez d'une telle quantité de mémoire vive, il y a de fortes chances que vous fassiez du swapping et que ce soit la cause de la dégradation de vos performances.

Vous devez réduire considérablement ces deux chiffres. Je n'ai jamais vu une limite de mémoire de 3,5 Go en une demi-décennie de support de Drupal. Si vous avez une tâche occasionnelle qui nécessite une limite aussi élevée, elle devrait probablement être exécutée en ligne de commande, avec la commande drush plutôt que par l'intermédiaire d'Apache.

Quel est le résultat de free -m ? Qu'en est-il iostat ( yum install sysstat si vous ne l'avez pas) ?

1voto

Baltazar Blake Points 363

Un processus est en train de manger votre processeur. Pour le savoir, procédez comme suit :

Type on the terminal:
top
Press Shift+P to order the list by CPU usage.

Vérifiez quel processus consomme votre processeur et comment y remédier, ou publiez-le ici dans les commentaires.

0voto

user13993 Points 257

Drupal est très relationnel. La création de tables temporaires sur le disque est un point commun. Vous voulez minimiser cela si vous le pouvez en optimisant les requêtes ou en plaçant le tmpdir MySQL sur un disque RAM si vous devez le faire.

Exécutez ceci :

mysqladmin -u root -p ext -ri 30 | grep tmp_disk_tables

La première entrée indique le nombre de tables temporaires créées sur le disque depuis le dernier redémarrage ; la suivante indique le nombre de tables temporaires créées pendant les 30 secondes de la fenêtre jusqu'à ce que vous sortiez de cette fenêtre par Ctrl-C.

Vous n'avez pas non plus précisé si vos tables Drupal étaient InnoDB ou MyISAM en termes de conseils de configuration MySQL. Dans Drupal 6, la configuration par défaut est MyISAM.

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