Ajuster la permutation Linux

introduction

Parfois, la vitesse du serveur est en quelque sorte lente, donc quand j'ai vérifié l'état en utilisant top, ps, etc., il semblait que j'utilisais swap.

Swap:          1.0G        278M        742M

Je me demandais s'il serait préférable d'augmenter la mémoire, mais l'ensemble de la commande gratuite ressemblait à ceci.

onodes@Balthazar:~$ free -h
              total        used        free      shared  buff/cache   available
Mem:           985M        309M        311M         33M        364M        495M
Swap:          1.0G        278M        742M

Comme vous pouvez le voir sur la disponibilité, 278 Mo de swap ont eu lieu alors que la quantité disponible de mémoire physique était suffisante.

Qu'est-ce qu'un swap?

Swap est une fonction permettant de déplacer les données de la mémoire vers un disque (HDD / SSD, etc.) lorsque la mémoire physique est insuffisante. En d'autres termes, l'idée est que s'il n'y a pas assez de mémoire physique, l'échange ne se produira pas.

swappiness La permutation est définie comme arrière-plan de la permutation à utiliser même si la mémoire physique est libre. swappiness est un paramètre du noyau Linux et est utilisé pour modifier et ajuster la fréquence de traitement de swap. Il est implémenté et adopté sous Linux avec le noyau Linux 2.6 ou supérieur (je pense que cela semble être le cas dans le monde ...).

onodes@Balthazar:~$ cat /proc/sys/vm/swappiness
60

S'il n'est pas ajusté, 60 doit être inclus par défaut. Cette valeur peut être ajustée de 0 à 100, et plus la valeur est élevée, plus il est facile d'échanger. En outre, si vous le définissez sur 0, swap ne sera pas utilisé tant que la mémoire ne sera pas épuisée.

valeur la fréquence
swappiness = 0 Ne pas permuter tant que la mémoire n'est pas pleine (épuisée)
swappiness = 60 Défaut
swappiness = 100 Swap positivement. Niveau qui affecte les performances globales

En regardant uniquement ici, il semble que la définition de swappiness = 0 améliorera les performances en utilisant la mémoire, mais si elle est définie sur 0, OOM Killer se produira facilement cette fois et le processus sera interrompu, alors n'en faites pas trop.

Cette fois, détendons-nous un peu et définissons swappiness = 10.

Changement et reflet du swappiness

Le système d'exploitation est Ubuntu 18.04.

$ sudo vim /etc/sysctl.conf

Ajouté en bas

vm.swappiness = 10

Et réfléchir

$ sudo sysctl -p
vm.swappiness = 10

Confirmation et libération du swap

Frappez librement.

onodes@Balthazar:~$ free -h
              total        used        free      shared  buff/cache   available
Mem:           985M        384M        181M         56M        419M        396M
Swap:          1.0G        276M        744M

La valeur du swap n'a pas changé ... le swap n'est pas publié ici. ** Si la quantité de mémoire réelle disponible est supérieure à la capacité de swap utilisée **, désactivez le swap, libérez-le, puis rallumez-le. Si la mémoire réelle est faible, arrêtez divers processus pour libérer de l'espace dans la mémoire réelle. Si la mémoire est utilisée efficacement dans cette mesure, je pense que le travail de cet article lui-même n'est pas nécessaire.

résultat

onodes@Balthazar:~$ free -h
              total        used        free      shared  buff/cache   available
Mem:           985M        578M         95M         34M        311M        224M
Swap:          1.0G          0B        1.0G

C'est 0B car c'est juste après la sortie du swap. À partir de là, faisons un suivi.

Recommended Posts

Ajuster la permutation Linux
Linux
mémorandum Linux
Commande Linux n ° 4
Commande Linux
Bases de Linux
direnv (linux)
Organisation Linux
commandes linux
Pratique Linux
Ubuntu Linux 20.04
Résumé Linux
Processus Linux
Autorisations Linux
Commande Linux n ° 5
À propos de Linux
Oubliez Linux
À propos de Linux
Commande Linux
À propos de Linux
À propos de Linux
Redirection Linux
Ajustez les autorisations des fichiers avec la commande Linux chmod