Drop bafera, može da se koristi, recimo u scenariju kad na hipervizoru imate 20 virtualnih mašina koje koriste 100% fizičkog RAM-a. Sama virtualna mašina, primera radi – ako ste joj dodelili 10GB RAM-a, ona može trenutno da koristi 2GB dok je recimo 7GB keširano i reusable – vi iako koritite 2GB RAM-a vas će to na fizičkom hostu koštati ukupno 9GB RAM-a…a da pri tom ne želite da samoj virtualnoj mašini smanjujete RAM koji ste joj dali na korišćenje.

Slika 1 – Pre dropovanja bafer keša

Iz primera sa Slike 1, recimo – server koristi 1345MB RAM-a i toliko mu trenutno treba – ali na hipervizoru na kojem se nalazi ovaj VPS će biti pokazano kako server koristi used+buff/cache = 1345+5859=7204MB RAM-a.
U baffer/cache jeste reusable RAM koji je sistem keširao zbog bržeg izvršavanja (RAM je brži od HDD-a) i čitanja podataka koji se često koriste a ukoliko zafali RAM-a za korićenje (kolona used) biće preuzeto odatle automatski. Sistem je pametan pa je skontao, na gornjoj slici, da 5GB nekakvih podataka koristim često i to je zapakovao da čeka poziv ili čitanje ukoliko se desi…i to će biti brže odrađeno kroz RAM nego kroz disk.

Koliko RAM-a onda imam na raspolaganju? 617MB?
NE. Ono koliko imaš je pod kolonom ‘available’, tj u ovom slučaju 5826MB. Tih 617MB RAM-a je RAM koji zvrji prazan i neiskorišćen.

Posle okidanja skripte dobićemo ovako neko stanje

Slika 2 – Posle dropovanja bafer keša

Kao što vidite, bafer je sa 5859MB pao na 439MB ali sistem i dalje koristi isto RAM-a i isto RAM-a ima na raspolaganju i dalje (100MB gore-dole) dok je sve iz bafera prešlo u stanje bleje (free). Ovim smo – hipervizoru oslobodili oko 5GB RAM-a, ali smo virtualnoj mašini nabacili novi posao jer umesto da podatke koje često čita – čita iz RAM-a, mora da čita sa diska – dok ne prevuče ponovo nazad u bafer čime se gubi na performansama.

Ljudi koji žele trajno da na ovaj uvrnuti način oslobađaju RAM jer kubure sa RAM-om, neće da ga prošire ili smanje korišćenje RAM-a na postojećim VM-ovima (ili gasiti VM-ove) ovu skriptu mogu postaviti u crontab da se pod root-om okida na 20 minuta…cena je naravno obaranje performansi, koje doduše neće biti baš drastično ali će svakako postojati. Korisnici na nekim mojim testnim VM-ovima nisu primetili neke velike razlike u performansama – što ne znači da ih i nema.

Dakle, ovo koristite samo na dev mašinama, i samo na virtualim mašinama koje se nalaze na hipervizoru koji kuburi sa RAM-om. Nećete ništa sistemski pojebati – ali ćete uticati na pad performansi.