Maison > Tutoriel système > Linux > Réglage des performances du système Linux: optimisation du processeur, de la mémoire et du disque

Réglage des performances du système Linux: optimisation du processeur, de la mémoire et du disque

Joseph Gordon-Levitt
Libérer: 2025-03-26 09:02:10
original
916 Les gens l'ont consulté

Réglage des performances du système Linux: optimisation du processeur, de la mémoire et du disque

Introduction

Linux est un système d'exploitation puissant et flexible, largement utilisé dans les serveurs, les systèmes intégrés et même les ordinateurs personnels. Cependant, même le système le mieux configuré peut faire face à des goulots d'étranglement des performances au fil du temps. Le réglage des performances est crucial pour assurer un fonctionnement efficace des systèmes Linux, qui peuvent optimiser l'utilisation des ressources et éviter des ralentissements inutiles.

Ce guide fournit une méthode de réglage des performances Linux qui se concentre sur trois domaines clés: CPU, mémoire et optimisation du disque. Que vous soyez un administrateur système, un ingénieur DevOps ou un passionné de Linux, la compréhension et la mise en œuvre de ces optimisations aideront à augmenter la réponse du système, à réduire les déchets de ressources et à vous assurer que le système se déroule bien.

Comprendre les indicateurs de performance du système

Avant de pouvoir optimiser davantage, assurez-vous de comprendre les mesures de performances du système. La surveillance de ces mesures nous permet de diagnostiquer les problèmes de performance et de prendre des décisions d'ajustement éclairées.

Indicateurs de performance clés (KPI) - Utilisation du processeur: le pourcentage du temps de CPU pris par le processus.

  • Charge moyenne: le nombre de processus en attente de temps de processeur.
  • Utilisation de la mémoire: la quantité de RAM utilisée et disponible.
  • E / S disque en attente: le moment où le processus attend l'accès au disque.
  • Échange Utilisation de partition: la quantité de mémoire virtuelle utilisée.
  • Commutateur de contexte: Nombre de temps de commutation de processus par seconde.
  • Débit de disque: lire / écrire la vitesse et la latence.

L'outil de surveillance des performances Linux fournit une variété d'outils pour mesurer ces mesures:

  • CPU et surveillance de la mémoire: haut, htop, mpstat
  • Analyse des performances du disque: IOSTAT, IOTOP, DSTAT
  • Surveillance au niveau du système: VMSTAT, SAR
  • Analyse et suivi des performances: perf, strace
  • Gestion des processus et des ressources: Nice, Ulimit, CGROUPS

Réglage des performances du processeur

Des goulots d'étranglement du CPU peuvent survenir en raison d'une charge de processus élevée, d'une planification inefficace ou d'une affirmation pour les ressources du processeur. Voici comment optimiser les performances du processeur.

Identifier les goulots d'étranglement du CPU Utilisez la commande suivante pour diagnostiquer les problèmes de processeur:

top htop mpstat -p tout 1 sar -u 5

  • Une moyenne de charge élevée et une faible utilisation du processeur indiquent les problèmes d'attente des E / S.
  • Utilisation élevée du processeur représente les processus à forte intensité de processeur.

La planification de processus optimisée Linux utilise un planificateur entièrement équitable (CFS) pour allouer l'heure du processeur. Vous pouvez ajuster manuellement les priorités du processus en utilisant la commande suivante:

Nice -n 10 process_name Renice -n -5 -p pid

Utilisez un taskset pour lier le processus à un CPU spécifique:

taskset -c 0,1 process_name

Limitez l'utilisation du processeur pour empêcher les processus de consommer trop de processeur, veuillez utiliser CPULIMIT:

cpumimit -l 50 -p pid

Pour les environnements conteneurisés, utilisez des CGROUPS:

cgcreate -g cpu: / limitégroup echo 50000> /sys/fs/cgroup/cpu/limitedgroup/cpu.cfs_quota_us CGEXEC -G CPU: Process de groupe limité_name

Le réglage des paramètres du noyau et le réglage des paramètres du noyau peuvent améliorer l'efficacité du processeur:

sysctl -w kernel.sched_min_granularity_ns = 10000000 sysctl -w kernel.sched_wakeup_granularity_ns = 15000000

Optimisation des performances de la mémoire

Les problèmes de mémoire peuvent ralentir gravement le système, entraînant un dépassement et une latence élevée.

Diagnostic d'utilisation de la mémoire Utilisez ces outils pour vérifier les statistiques de la mémoire:

GRATUIT -M VMSTAT 5 SMEM

Trouvez une utilisation de partition d'échange élevée (SI et donc dans VMSTAT), qui indique la pression de la mémoire.

Optimiser l'utilisation de la partition d'échange - Vérifiez les performances de partition d'échange:

swapon -s

  • Ajustez la tendance des partitions d'échange:

sysctl -w vm.swappiness = 10

  • Utilisez des cloisons de swap de compression ZSWAP ou ZRAM:

modprobe zram echo 1> / sys / block / zram0 / réinitialisation

Gérez les caches et les tampons pour libérer de la mémoire, effacer les caches inutilisées:

synchronisation; Echo 3> / Proc / Sys / Vm / Drop_Caches

Ajustez le comportement du tampon du noyau:

sysctl -w vm.dirty_ratio = 20 sysctl -w vm.dirty_background_ratio = 5

Optimisation des grandes pages pour les applications telles que les bases de données, activer les grandes pages:

Echo 1024> / Proc / Sys / Vm / NR_HugePages

Réglage des performances d'E / S de disque

Les performances du disque sont essentielles aux bases de données, aux serveurs de fichiers et aux applications qui gèrent de grandes quantités de données.

Mesurer les performances du disque - Vérifiez l'activité des E / S:

iosta -x 5 iotop

  • Performance du disque de référence:

fio --name = seqwrite --rw = write --bs = 128k --ze = 1g --numjobs = 4 --runtime = 60

Optimisation des systèmes de fichiers - Utilisez des systèmes de fichiers optimisés (EXT4, XFS, BTRFS).

  • Activer la journalisation uniquement si nécessaire:

Tune2fs -o Has_journal / dev / sdx

  • Utilisez des options de montage noatime et nodiratime:

Mount -O Remount, noatime, nodiratime / dev / sdx / mnt

Le planificateur de disque optimise le planificateur d'E / S pour le changement de SSD:

ECHO NOOP> / SYS / BLOCK / SDA / FIDE / SHANDUPER

Pour le disque dur:

ECHO CFQ> / SYS / BLOCK / SDA / Queue / Scheduler

Optimisation RAID et LVM - Utilisez RAID 10 pour de meilleures performances de lecture / écriture.

  • Optimiser le rayage LVM:

lvcreate -i 2 -i 256 -l 10g -n lv_name vg_name

Optimisation du SSD - Activer la garniture:

fstrim -v /

  • Optimiser les paramètres de montage:

Mount -o défausse, par défaut / dev / sdx / mnt

Stratégie générale d'optimisation du système

  • Ajuster les paramètres du noyau:

sysctl -w net.core.somaxConn = 1024 sysctl -w fs.file-max = 100000

  • Utilisez Ulimit pour éviter l'épuisement des ressources:

ulimit -N 100000

  • Désactiver les services inutiles:

Systemctl Disable Service_name

Étude de cas de réglage des performances

Charge du CPU élevée sur le serveur Web - Utilisation élevée du processeur PHP-FPM est identifiée.

  • Utilisez un taskset pour allouer la charge.
  • La mise en œuvre de la mise en cache réduit l'utilisation du processeur de 40%.

Excès d'E / S sur le disque sur le serveur de base de données - Déplacez les journaux vers des disques séparés.

  • Optimiser PostgreSQL Shared_Buffers et Work_mem.
  • Le passage à SSD augmente le temps de requête de 60%.

en conclusion

Le réglage des performances est un processus en cours impliquant la surveillance, l'analyse et l'optimisation. En suivant les meilleures pratiques décrites dans ce guide, vous pouvez vous assurer que votre système Linux fonctionne en douceur et efficacement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal