Înțelegerea vm.swappiness

Configurare noua (How To)

Situatie

Utilizarea swap a reprezentat o parte esențială a utilizării mașinilor UNIX mai mici la începutul anilor 1990. Este încă util (ca și cum ați avea o pneu de rezervă în autovehiculul dvs.) atunci când scurgeri de memorie neplăcute interferă cu munca dvs. Aparatul va încetini, dar în majoritatea cazurilor va fi încă utilizabil pentru a-și termina sarcina atribuită. Dezvoltatorii de software liber au făcut pași importanți pentru a reduce și a elimina erorile de program, astfel încât, înainte de a schimba parametrii kernel-ului, să ia în considerare actualizarea la o versiune mai nouă a aplicației și a bibliotecilor înrudite.

Dacă executați numeroase sarcini, atunci sarcinile inactive vor fi schimbate pe disc, făcând o mai bună utilizare a memoriei cu sarcinile dvs. active. Editare video și alte aplicații mari consumatoare de memorie au adesea recomandate cantități de memorie și spațiu pe disc. Dacă aveți o mașină mai veche, care nu poate avea o actualizare de memorie, atunci dacă faceți mai multă schimbare ar putea fi o soluție temporară bună pentru dvs.

Schimbarea poate avea loc într-o partiție separată sau într-un fișier swap. Partiția este mai rapidă și favorizată de multe aplicații de baze de date. Abordarea fișierelor este mai flexibilă (consultați pachetul dphys-swapfile din Debian GNU / Linux). Având mai mult de un dispozitiv fizic pentru schimbare permite kernel-ului Linux să aleagă dispozitivul cel mai rapid disponibil (latență mai mică).

Solutie

vm.swappiness
Valoarea implicită a vm.swappiness este 60 și reprezintă procentul de memorie liberă înainte de a activa swap. Cu cât valoarea este mai mică, cu atât se utilizează mai puține schimburi și mai multe pagini de memorie sunt păstrate în memoria fizică.

Valoarea de 60 este un compromis care funcționează bine pentru sistemele desktop moderne. O valoare mai mică este o opțiune recomandată pentru un sistem de servere. După cum arată manualul de redare a performanțelor Red Hat, se recomandă o valoare de swappiness mai mică pentru volumul de lucru al bazei de date. De exemplu, pentru bazele de date Oracle, Red Hat recomandă o valoare swappiness de 10. În schimb, pentru bazele de date MariaDB, se recomandă să setați swappiness la o valoare de 1.

Schimbarea valorii influențează direct performanța sistemului Linux. Aceste valori sunt definite:

* 0: swap este dezactivat
* 1: suma minimă de schimbare fără a fi dezactivată în totalitate
* 10: valoare recomandată pentru a îmbunătăți performanța atunci când există suficientă memorie într-un sistem
* 100: schimbare agresivă

După cum se arată mai sus, comanda pisică ajută la citirea valorii. De asemenea, comanda sysctl vă oferă același rezultat:

# sysctl vm.swappiness
vm.swappiness = 60
#

Rețineți că comanda sysctl este disponibilă numai pentru un utilizator administrativ. Pentru a seta valoarea setați temporar valoarea din sistemul de fișiere / proc după cum urmează:
# echo 10 > /proc/sys/vm/swappiness
Ca alternativă, puteți folosi comanda sysctl după cum urmează:
# sysctl -w vm.swappiness=10
Pentru a seta definitiv valoarea, deschideți fișierul /etc/sysctl.conf ca utilizator administrativ și adăugați următoarea linie:
vm.swappiness = 10

Tip solutie

Permanent

Voteaza

(8 din 21 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?