Comment la surveillance métrique augmente-t-elle le temps de fonctionnement du serveur ?

Introduction

Tout le monde déteste attendre qu'une application se charge - ou qu'une application ne se charge pas. Et si cela se produit avec votre application, vous perdrez non seulement des clients, mais aussi la valeur de votre marque. La plupart des applications sont désormais disponibles en ligne. Les serveurs jouent donc un rôle important dans le fonctionnement des applications.

Les performances du serveur sont directement liées aux performances de l'application. Il est donc essentiel de surveiller et d'améliorer les performances du serveur. Les performances des serveurs comportent plusieurs aspects. Dans cet article, nous examinerons les différentes mesures qui permettent d'analyser les performances des serveurs et la manière dont nous pouvons les améliorer. Nous verrons ensuite à quel point la surveillance des performances des serveurs est cruciale et comment commencer.

Performances du serveur

La mesure de la performance d'un serveur, en général, est appelée performance du serveur. Mais qu'est-ce qu'un serveur "performant" ? Chaque serveur est créé, configuré et utilisé dans un but précis. Par exemple, les serveurs de messagerie sont utilisés pour gérer et distribuer les courriers électroniques, et les serveurs de base de données sont chargés de stocker, de traiter et d'interagir avec les données, etc. Lorsqu'un serveur fournit le service demandé au moment voulu, on dit qu'il fonctionne efficacement.

La mesure des performances d'un serveur combine plusieurs paramètres. Vous devez d'abord mesurer divers paramètres de performance du serveur avant de porter un jugement sur la performance d'un serveur. Examinons maintenant quelques-unes des mesures les plus cruciales des performances du serveur et discutons des moyens de les améliorer.

Que sont les mesures, la surveillance et les alertes ?

La base d'un système de surveillance comprend les idées interconnectées de métriques, de surveillance et d'alerte. Ils peuvent vous aider à comprendre les tendances d'utilisation ou de comportement et les effets de vos changements en vous donnant une visibilité sur l'état de vos systèmes. Ces systèmes peuvent alerter un opérateur si les mesures sont en dehors des fourchettes prévues et peuvent aider à faire remonter des informations pour trouver des causes potentielles.

Pourquoi devons-nous collecter des données et quelles sont-elles ?

Les métriques sont les mesures non éditées de la consommation des ressources ou de l'activité qui peuvent être vues et rassemblées dans vos systèmes. Il peut s'agir de statistiques d'utilisation de bas niveau fournies par le système d'exploitation ou de données de plus haut niveau liées à la fonctionnalité ou à la tâche précise d'un composant, telles que les demandes satisfaites par seconde ou la participation à un pool de serveurs web. D'autres mesures sont données sous la forme d'un taux qui reflète l'"activité" d'un composant. Certaines mesures sont présentées en proportion d'une capacité totale.

Les mesures que votre système d'exploitation a déjà mises à disposition pour refléter les ressources physiques sous-jacentes sont souvent les plus simples à utiliser. L'espace disque, la charge du processeur, l'utilisation de l'espace de pagination et d'autres statistiques sont déjà disponibles, ont une valeur instantanée et peuvent être envoyées à un système de surveillance avec peu d'efforts supplémentaires. De nombreux serveurs web, serveurs de base de données et autres logiciels disposent également de mesures indépendantes qui peuvent être transmises.

Il se peut que vous deviez ajouter du code ou des interfaces à d'autres composants, en particulier à vos applications, pour exposer les mesures qui sont importantes pour vous. L'ajout d'une instrumentation à vos services est une autre façon de collecter et de mettre à disposition des métriques.

Les mesures sont utiles parce qu'elles éclairent le fonctionnement et l'état de vos systèmes, en particulier lorsqu'elles sont étudiées collectivement. Ce sont les composants essentiels que votre système de surveillance utilise pour fournir une image complète de votre environnement, automatiser les réactions aux changements et avertir les gens si nécessaire. Les métriques sont les quantités fondamentales utilisées pour analyser les modèles historiques, comparer diverses variables et suivre les changements dans la production, la consommation ou les taux d'erreur.

Mesures des performances du serveur

Débit

Le nombre de requêtes qu'un serveur peut traiter au cours d'une période donnée est appelé débit. La seconde est généralement utilisée comme unité de temps dans les calculs de débit. Mais cela peut changer en fonction du cas d'utilisation. Le débit d'un serveur est de 100, par exemple, s'il traite 100 demandes en une seconde. Cependant, il peut arriver qu'il ne soit pas en mesure de déterminer le débit chaque seconde. Dans ce cas, vous pouvez utiliser le débit moyen. Le ratio du nombre total de requêtes traitées sur une période donnée est appelé débit moyen.

Le débit moyen serait de 30 000 requêtes/10 minutes, soit 50 requêtes par seconde si 30 000 requêtes sont traitées en 10 minutes.

En réduisant le temps de latence, le débit peut être amélioré. Le retard du réseau est l'un des types de latence les plus courants qui réduisent le débit. Il serait utile de rechercher l'origine du retard élevé. Le matériel, la mémoire, le routage, etc. peuvent être en cause. Dès que le problème à l'origine du retard excessif sera résolu, le débit augmentera naturellement.

Utilisation de l'unité centrale

 Que signifie l'utilisation de l'unité centrale du serveur ?

Le système a une tâche pour tout ce qui se passe sur le serveur. Cette tâche est divisée en processus que le serveur exécute. Les différents processus peuvent avoir des niveaux de complexité et des délais d'exécution variables. Par conséquent, l'unité centrale a besoin d'un certain temps pour accomplir la tâche. En d'autres termes, la procédure est exécutée par l'unité centrale. Le pourcentage de temps pendant lequel l'unité centrale est utilisée pour exécuter des tâches est connu sous le nom d'utilisation de l'unité centrale.

L'utilisation du processeur est la durée pendant laquelle le processeur est utilisé. Généralement, la consommation de l'unité centrale est calculée en pourcentage. Par conséquent, la consommation de l'unité centrale peut être décrite comme la proportion de temps pendant laquelle l'unité centrale est utilisée pour accomplir ses tâches.

La liste suivante comprend quelques causes typiques d'une utilisation excessive de l'unité centrale :

les processus qui nécessitent beaucoup de puissance de l'unité centrale

Certains programmes exigent beaucoup de puissance de l'unité centrale. L'utilisation de l'unité centrale augmentera sans aucun doute si vous essayez de faire tourner un jeu vidéo haut de gamme sur un PC aux spécifications médiocres. De même, plusieurs processus peuvent avoir besoin d'une grande puissance de l'unité centrale pour fonctionner. L'une des causes peut être l'un de ces processus ou un groupe de processus qui requièrent collectivement beaucoup de CPU. Une consommation élevée de CPU sur les serveurs peut résulter de l'exécution de plusieurs services pour assurer le fonctionnement du serveur, de simulations, etc.

opérations de fond

Les processus système et les processus d'application sont les deux principales divisions des processus. Les processus nécessaires au fonctionnement de votre système sont appelés processus système. Les processus d'application sont ceux que vous utilisez pour un objectif particulier. Ces processus utilisent les ressources de l'unité centrale lorsqu'ils continuent à fonctionner en arrière-plan.

Même après la fermeture de la fenêtre de l'application, de nombreux processus d'application continuent à fonctionner en arrière-plan. Il est moins probable que cela se produise sur un serveur, car ils sont régulièrement entretenus et nettoyés pour s'assurer qu'ils n'incluent que les processus nécessaires, mais cela reste concevable.

Logiciels malveillants

Les logiciels malveillants (Malware) sont des programmes utilisés par des acteurs malveillants pour attaquer votre système ou prendre des mesures non autorisées. Au début, les logiciels malveillants n'utilisent pas beaucoup de ressources de l'unité centrale pour se cacher, mais une fois qu'ils commencent à agir de manière malveillante, ils utilisent beaucoup de ressources de l'unité centrale. D'après l'incident que j'ai vu, le logiciel malveillant a commencé à déplacer toutes les données sensibles du serveur vers le stockage en nuage un jour après avoir été introduit dans le serveur une semaine plus tôt. Par conséquent, ce logiciel malveillant n'a pas consommé beaucoup d'énergie CPU pendant qu'il se configurait et qu'il localisait des données cruciales. Cependant, une fois qu'il a découvert tout ce dont il avait besoin, le transfert de données a entraîné une augmentation significative de la consommation de l'unité centrale.

En outre, voici quelques techniques typiques pour optimiser l'utilisation de l'unité centrale :
  • Redémarrez le serveur. Cela met fin à la plupart des processus inutiles.
  • Recherchez les processus de démarrage et d'arrière-plan inutiles, et arrêtez-les ou désactivez-les.
  • Protégez-vous des logiciels malveillants.

Pourquoi surveiller l'utilisation de l'unité centrale du serveur ?

Les tâches de haut niveau qu'un serveur peut être amené à exécuter comprennent les tâches de l'utilisateur et du système. Lorsqu'un utilisateur demande un service ou des données au serveur, c'est le travail de l'utilisateur. Supposons que vous utilisiez YouTube pour effectuer une recherche. Les vidéos liées à votre recherche doivent être récupérées par le serveur de YouTube, qui doit ensuite fournir une réponse à votre demande. Le temps de l'unité centrale est utilisé pour cette transmission de données.

Les tâches d'un serveur ne se limitent pas à répondre aux demandes des utilisateurs. Le système d'exploitation et les services web sont exécutés sur son unité centrale. Cependant, les serveurs peuvent également être utilisés pour exécuter certains scripts qui traitent des données. L'exécution d'un playbook Ansible en est une illustration typique. Ces playbooks peuvent exécuter des actions même lorsque l'utilisateur n'est pas présent.

Pourquoi surveiller l'utilisation de la mémoire du serveur ?

L'utilisation de la mémoire est une autre mesure importante et utile du temps de fonctionnement du serveur.

Gardez à l'esprit que si l'utilisation de la mémoire du serveur augmente pour une raison quelconque et que vous ne le remarquez pas, le serveur peut cesser de fonctionner et les services peuvent s'arrêter.

Conclusion

La mise en place et la gestion d'une infrastructure de production nécessitent la collecte de mesures, d'outils de surveillance et la configuration d'alarmes. Savoir ce qui se passe dans vos systèmes, quelles ressources demandent de l'attention et ce qui cause des lenteurs ou des pannes est une information vitale. Même si le développement et la mise en œuvre d'un système de surveillance peuvent s'avérer difficiles, il s'agit d'un investissement qui peut aider votre équipe à hiérarchiser son travail, à transférer le contrôle à un système automatisé et à comprendre l'impact de votre infrastructure et de vos logiciels sur la stabilité et les performances de votre entreprise.

Xitoring offre toutes sortes de solutions de surveillance métrique sur les serveurs Linux et Windows avec un agent léger installé sur eux, vous pouvez l'essayer gratuitement pour toujours. Vous pouvez vous inscrire ici

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *