Aller au contenu

Diagnostics des ressources serveur

Dans cet article

Analyse de la charge globale du serveur

Pour surveiller l'état du serveur, des outils intégrés sont utilisés :

  • Windows : « Gestionnaire des tâches ».
  • Linux : L'outil top affiche la charge moyenne (Load Average) sur 1, 5 et 15 minutes. Un indicateur idéal est une valeur qui ne dépasse pas le nombre de cœurs du processeur. Par exemple, un LA 4 sur un serveur à quatre cœurs indique une utilisation de 100 % des cœurs, nécessitant une réduction immédiate de la charge.

De plus :

  • atop met en évidence les indicateurs élevés avec la couleur rouge.
  • nmon fournit des graphiques de la charge du processeur, du disque, du réseau et de la mémoire. Pour activer les graphiques, utilisez des touches spécifiques, dont la liste est affichée lors du lancement du programme.

Analyse détaillée des ressources

Espace disque

Un espace disque insuffisant peut provoquer des erreurs telles que « Impossible de se connecter à la base de données : Échec de la connexion à MySQL », même si le serveur est accessible. Pour vérifier :

  • La commande df -h affiche les partitions occupées et libres.
  • du -hs /* aide à identifier les répertoires volumineux, par exemple, anciennes archives.
  • Nettoyer les fichiers temporaires (journaux, cache, sessions PHP) — une façon efficace de libérer de l'espace.

RAM

La nature dynamique de l'utilisation de la RAM nécessite un suivi régulier. La commande free -m affiche :

  • Mémoire utilisée et libre.
  • La quantité de mémoire accessible par l'utilisateur (somme de libre et caché).

Pour analyser les processus consommant de la mémoire, utilisez :

ps axo rss,comm,pid | awk '
{
    # Grouper par nom du processus (comm)
    proc_list[$2]++;
    # Somme RSS pour chaque processus
    total_memory[$2] += $1;
}
END {
    # Afficher les résultats
    for (proc in total_memory) {
        printf("%.0fMB\t%s\n", total_memory[proc]/1024, proc);
    }
}' | sort -nr | head -n 10

Canal réseau

Pour le suivi du trafic :

  • iftop avec l'option -m 100M affiche la largeur de canal. Si le débit dépasse 50b (bande blanche dans l'utilitaire), il est nécessaire d'augmenter la bande passante.

Note

Vous pourriez avoir besoin d'installer ces et autres utilitaires depuis leur site web ou un dépôt du système d'exploitation.

  • jnettop et iptraf — outils supplémentaires pour l'analyse de trafic réseau.

Surveillance à travers le navigateur

Pour la surveillance via un navigateur, vous pouvez installer des outils spécialisés sur le serveur :

  • Munin et NetData — fournissent des graphiques de charge du processeur, mémoire, disque et trafic.

Certains panneaux de contrôle d'hébergement, tels que ispmanager, permettent l'analyse des ressources via l'interface : suivi des processus, utilisation de l'espace disque, etc.

Analyse de la charge provenant d'Apache et MySQL

Si une charge élevée du serveur est causée par Apache, il reçoit un grand nombre de requêtes sur les ports 80 et 443. Pour réduire la charge, il est recommandé d'utiliser Nginx sur le serveur, d'activer la compression des données et de configurer le caching pour les ressources statiques.

Les causes possibles de telles requêtes peuvent varier : trafic légitime du site web, activité des bots des moteurs de recherche ou plus sérieusement, une attaque DDoS. Si causée par les bots des moteurs de recherche, vous pouvez réduire l'intensité de leurs demandes en ajustant les intervalles entre les visites sur le serveur dans les paramètres Yandex.Webmaster et Google Webmasters Tool. En cas d'attaque, les paramètres réguliers ne suffiront pas — des mesures de protection supplémentaires devront être mises en œuvre, telles que des outils spécialisés ou des solutions cloud.

Une charge élevée peut également être causée par le travail de MySQL. Dans ce cas, il est recommandé d'optimiser les paramètres du service à l'aide de l'utilitaire Mysqltuner. Portez également attention aux requêtes SQL envoyées aux bases de données et vérifiez leur efficacité. Pour cela, vous pouvez utiliser la commande show full processlist, qui affiche une liste des opérations MySQL actuelles.

Il est aussi important de surveiller l'indicateur WA dans l'utilitaire top. Si cette valeur dépasse 20, elle peut indiquer que les données ne peuvent pas être écrites sur le disque assez rapidement, entraînant des échecs. Dans une telle situation, il est recommandé d'améliorer le matériel, par exemple en installant des disques SSD ou NVMe, qui offrent une performance plus élevée.


Une partie du contenu de cette page a été créée ou traduite à l'aide d'IA.