Linux-da RAM ýadyň keşini, buferini we çalşygyny nädip arassalamaly


Beýleki operasiýa ulgamy ýaly, GNU/Linux hem ýady dolandyrmagy netijeli we hatda ondanam köp ýerine ýetirdi. Anyöne haýsydyr bir proses ýadyňyzy ýitirýän bolsa we ony arassalamak isleseňiz, Linux goç keşini ýuwmagyň ýa-da arassalamagyň usulyny hödürleýär.

  • Linux-da ýadyň ulanylyşy boýunça iň gowy 15 prosesi tapyň
  • Linux-da iň ýokary ýat we CPU ulanylyşy boýunça iň ýokary işleýiş amallaryny tapyň
  • Linux-da prosesleriň wagtyny we ýadyny nädip çäklendirmeli

Her Linux ulgamynda haýsydyr bir prosese ýa-da hyzmatlara päsgel bermezden keşi arassalamak üçin üç wariant bar.

1. Diňe PageCache-i arassalaň.

# sync; echo 1 > /proc/sys/vm/drop_caches

2. Stomatologiýa we inodlary arassalaň.

# sync; echo 2 > /proc/sys/vm/drop_caches

3. Sahypa agyrysyny, stomatologiýa we inodlary arassalaň.

# sync; echo 3 > /proc/sys/vm/drop_caches 

Aboveokardaky buýrugyň düşündirişi.

sinhronlamak faýl ulgamynyň buferini ýuwýar. \; bilen bölünen buýruk yzygiderli işleýär. Gabygy indiki buýrugy yzygiderli ýerine ýetirmezden ozal her buýrugyň gutarmagyna garaşýar. Ernadro resminamalarynda aýdylyşy ýaly, drop_cache ýazmak, keşi öldürmezden keşi arassalaýar. programma/hyzmat, buýruk echo faýl ýazmak işini edýär.

Disk keşini arassalamaly bolsaňyz, birinji buýruk kärhanada we önümçilikde \... echo 1>… ýaly iň ygtybarlydyr. diňe PageCache arassalaýar. Ulanylmagy maslahat berilmeýär Näme edýändigiňizi bilýänçäňiz, önümçilikde \... echo 3> ýokardaky üçünji wariant, sebäbi sahypa sahypalaryny, stomatologiýalary we inodlary arassalaýar.

Dürli sazlamalary ulananyňyzda we hakykatdanam I/O giň ölçegde ýörite ýerine ýetirilendigini barlamak isleseňiz, bufer keşini arassalamaly bolmagyňyz mümkin. Keşi ýokarda düşündirilişi ýaly Ulgamy täzeden açmazdan goýup bilersiňiz, iş wagty talap edilmeýär.

Linux, diske seretmezden ozal disk keşine seredýän görnüşde döredildi. Keşdäki çeşmäni tapsa, haýyş diske ýetip bilmez. Keşi arassalasak, disk keşi az peýdaly bolar, sebäbi OS diskdäki çeşmäni gözlär.

Mundan başga-da, keş arassalananda we OS tarapyndan talap edilýän ähli çeşmeler ýene-de disk keşine ýüklenende ulgamy birnäçe sekunt haýallaşdyrar.

Indi, kron meýilnamalaşdyryjy meselesi arkaly her gün 2-de da RAM keşini awtomatiki arassalamak üçin gabyk skriptini dörederis. Gabyk skriptini clearcache.sh dörediň we aşakdaky setirleri goşuň.

#!/bin/bash
# Note, we are using "echo 3", but it is not recommended in production instead use "echo 1"
echo "echo 3 > /proc/sys/vm/drop_caches"

Clearcache.sh faýlynda ýerine ýetiriş rugsadyny düzüň.

# chmod 755 clearcache.sh

Goç keşini arassalamaly bolanyňyzda, skripti çagyryp bilersiňiz.

Indi her gün irden sagat 2-de RAM keşini arassalamak üçin kron düzüň. Redaktirlemek üçin kontab açyň.

# crontab -e

Aşakdaky setiri goşuň, her gün 2-de işletmek üçin saklaň we çykyň.

0  2  *  *  *  /path/to/clearcache.sh

Bir işe nädip gözegçilik edip boljakdygy barada has giňişleýin maglumat üçin 11 sany “Kron meýilnamalaşdyryş işi” baradaky makalamyzy barlap bilersiňiz.

! Ok! bu däl. Her gün irden sagat 2-de goç keşini arassalamak üçin ssenariýany meýilleşdiren ýagdaýyňyzy pikir ediň. Her gün irden sagat 2-de skript ýerine ýetirilýär we RAM keşiňizi ýuwýar. Haýsydyr bir sebäbe görä garaşylýanlardan has köp bolmagy mümkin web sahypaňyzda we serweriňizden çeşme gözleýär.

Şol bir wagtyň özünde meýilleşdirilen skript işleýär we keşdäki hemme zady arassalaýar. Indi ähli ulanyjylar diskden maglumat alýarlar. Serweriň çökmegine we maglumat bazasynyň bozulmagyna sebäp bolar. Diňe zerur bolanda goç-keşi arassalaň we aýak yzyňyzy biliň, ýogsam siz ýük kult ulgamynyň dolandyryjysy.

Swap giňişligini arassalamak isleseňiz, aşakdaky buýrugy işledip bilersiňiz.

# swapoff -a && swapon -a

Şeýle hem, ähli töwekgelçiliklere düşüneniňizden soň ýokardaky buýrugy ýokardaky kron skriptine goşup bilersiňiz.

Indi ýokardaky buýruklaryň ikisini-de RAM Keşini we Swap giňişligini arassalamak üçin dogry skript düzmek üçin bir buýruga birleşdireris.

# echo 3 > /proc/sys/vm/drop_caches && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared'

OR

$ su -c "echo 3 >'/proc/sys/vm/drop_caches' && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared'" root

Aboveokardaky buýruklaryň ikisini hem synagdan geçirenimizden soň, skripti işletmezden ozal we soň\free -h buýrugyny işlederis we keş keşbini barlarys.

Häzirlikçe, bu makalany halasaňyz, teswirlerde bize gymmatly pikirleriňizi bermegi ýatdan çykarmaň, önümçilikde we kärhanada goç keşini we buferi arassalamak gowy pikir diýip pikir edýärsiňizmi?