Jinsi ya Kufuta Kashe ya Kumbukumbu ya RAM, Buffer, na Kubadilishana kwenye Linux


Kama mfumo mwingine wowote wa uendeshaji, GNU/Linux imetekeleza usimamizi wa kumbukumbu kwa ufanisi na hata zaidi ya hapo. Lakini ikiwa mchakato wowote unakula kumbukumbu yako na unataka kuifuta, Linux hutoa njia ya kufuta au kufuta akiba ya kondoo dume.

  • Tafuta Michakato 15 Bora kwa Matumizi ya Kumbukumbu katika Linux
  • Tafuta Michakato ya Uendeshaji Bora kwa Kumbukumbu ya Juu na Matumizi ya CPU katika Linux
  • Jinsi ya Kupunguza Muda na Matumizi ya Kumbukumbu ya Michakato katika Linux

Kila Mfumo wa Linux una chaguzi tatu za kufuta kashe bila kukatiza michakato au huduma zozote.

1. Futa PageCache pekee.

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

2. Futa meno na ingizo.

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

3. Futa kache ya kurasa, vitambulisho na ingizo.

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

Ufafanuzi wa amri hapo juu.

kusawazisha kutaondoa bafa ya mfumo wa faili. Amri Imetenganishwa na \;” endesha kwa mfuatano. Ganda husubiri kila amri kusitishwa kabla ya kutekeleza amri inayofuata katika mlolongo. Kama ilivyotajwa katika hati ya kernel, kuandika kwa drop_cache kutasafisha akiba bila kuua yoyote. maombi/huduma, amri echo inafanya kazi ya kuandika ili faili.

Iwapo itabidi ufute akiba ya diski, amri ya kwanza ndiyo salama zaidi katika biashara na uzalishaji kama \...echo 1 > ....” itafuta PageCache pekee. Haipendekezwi kutumia chaguo la tatu juu ya \...echo 3 >” katika toleo la umma hadi ujue unachofanya, kwani itafuta akiba ya kurasa, vitambulisho na ingizo.

Unapotumia mipangilio anuwai na unataka kuangalia, ikiwa inatekelezwa haswa kwenye alama ya kina ya I/O, basi unaweza kuhitaji kufuta kache ya bafa. Unaweza kuacha kashe kama ilivyoelezewa hapo juu bila kuwasha tena Mfumo yaani, hakuna wakati wa kupumzika unaohitajika.

Linux imeundwa kwa njia ambayo inaonekana kwenye kashe ya diski kabla ya kuangalia kwenye diski. Ikiwa inapata rasilimali kwenye cache, basi ombi haifikii diski. Ikiwa tunasafisha kashe, kashe ya diski haitakuwa muhimu sana kwani OS itatafuta rasilimali kwenye diski.

Kwa kuongezea, itapunguza mfumo kwa sekunde chache wakati kashe inasafishwa na kila rasilimali inayohitajika na OS inapakiwa tena kwenye kashe ya diski.

Sasa tutaunda hati ya ganda ili kufuta akiba ya RAM kiotomatiki kila siku saa 2 asubuhi kupitia kazi ya kipanga cron. Unda hati ya ganda clearcache.sh na ongeza mistari ifuatayo.

#!/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"

Weka ruhusa ya kutekeleza kwenye faili ya clearcache.sh.

# chmod 755 clearcache.sh

Sasa unaweza kupiga simu hati wakati wowote unapohitajika kufuta kashe ya kondoo dume.

Sasa weka cron kufuta akiba ya RAM kila siku saa 2 asubuhi. Fungua crontab kwa uhariri.

# crontab -e

Ongeza laini iliyo hapa chini, hifadhi na uondoke ili kuiendesha saa 2 asubuhi kila siku.

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

Kwa maelezo zaidi juu ya jinsi ya kupata kazi, unaweza kupenda kuangalia nakala yetu juu ya Kazi 11 za Kupanga Cron.

Hapana! sio. Fikiria hali wakati umepanga hati kufuta akiba ya kondoo-dume kila siku saa 2 asubuhi. Kila siku saa 2 asubuhi hati inatekelezwa na husafisha kashe yako ya RAM. Siku moja kwa sababu yoyote inaweza kuwa zaidi ya inavyotarajiwa watumiaji wako mtandaoni kwenye tovuti yako na kutafuta rasilimali kutoka kwa seva yako.

Wakati huo huo, script iliyopangwa inaendesha na kufuta kila kitu kwenye cache. Sasa watumiaji wote wanachota data kutoka kwa diski. Itasababisha ajali ya seva na kuharibu hifadhidata. Kwa hivyo futa akiba ya kondoo-dume inapohitajika tu, na ujue nyayo zako, vinginevyo wewe ni Msimamizi wa Mfumo wa Ibada ya Mizigo.

Ikiwa unataka kufuta nafasi ya Badilisha, unaweza kupenda kutekeleza amri iliyo hapa chini.

# swapoff -a && swapon -a

Pia, unaweza kuongeza amri hapo juu kwa hati ya cron hapo juu, baada ya kuelewa hatari zote zinazohusiana.

Sasa tutakuwa tukichanganya amri zote mbili hapo juu kuwa amri moja kutengeneza hati sahihi ya kufuta Akiba ya RAM na Badilisha Nafasi.

# 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

Baada ya kujaribu amri zote mbili hapo juu, tutaendesha amri \bure -h kabla na baada ya kuendesha hati na tutaangalia akiba.

Hiyo ndiyo yote kwa sasa, ikiwa ulipenda makala, usisahau kutupatia maoni yako ya thamani katika maoni ili kutujulisha, unafikiri nini ni wazo nzuri ya kufuta cache ya kondoo na buffer katika uzalishaji na Biashara?