Teknolojinin Geldiği Nokta

Genel

Centos Ram Cache Temizleme

Centos Ram Cache Temizleme

Centos Ram Cache Temizleme işlemi linux sunucularda performans artışı sağlamaktadır. Ram cache boyutunun artması zaman zaman sorunlara neden olabiliyor. Bu makalemizde Centos işletim sistemini kullanan sunucu kullanıcılarının ram cache verilerini nasıl temizleyeceklerini detaylı olarak anlatacagız.

Centos Ram Cache Temizleme işlemini anlatmadan önce Ram Cache konusunda bilgi vermek isterim.

Ram nedir ? Zaten temel olarak biliyoruz. Sunucu üzerinde kullandıgınız ram bellek anlık olarak yapılan işlemleri diske ve işlemciye aşırı yük bindirmemek için cache alanında saklar. Ram cache sayesinde işlemci verileri üzerinde tutmadan çok daha hızlı bir şekilde cevap vermektedir. Ram memory üzerinden bulunan cache alanı vardır. Bu alanın boyutu oldukça küçüktür. Fakat okuma ve yazma hızı diskinizin çok çok üzerinde bir performans vermektedir. Sunucu bilgisayarda sürekli işlenen ve en çok gerekli olan veriler burada cache kısmında tutulur. Bu özellik sayesinde CPU üzerinden inanılmaz bir yük kalkmaktadır. Dolayısıyla sistem hıza kavuşmaktadır.

Sunucu sistemleri sürekli açık kalan ve yüksek uptime olan cihazlar oldugundan Ram üzerindeki cache bellekte sürekli dolu olarak kalmaktadır. Centos ram cache bellek temizleme konusunda sunucu yeniden başlatmanız cache bölümündeki veriyi silinecektir. Fakat bu işlemi sunucu açıkkende yapabilirsiniz. Hatta cron tanımlayıp otomatik olarak yapılabilir.

Centos Ram Cache Temizleme

Linux ram cache bellek olayını bilgisyarlarınızda kullandıgını  tarayıcı geçmişi yada tarayıcı önbellekleme olarak düşünebilirsiniz. Centos cache yapısıda bire bir aynı mantıkla çalışmaktadır. Sunucu cache temizleme konusu üç bölüme ayrılmaktadır. Bunlar;

1- RAM Memory Cache Temizleme

2- Buffer Cache Temizleme

3- Swap Disk Cache Temizleme

Centos cache temizlemede iki bölümden oluşuyor. Bunlar PageCache Temizleme, dentries ve inodes Cache Temizleme şeklindedir. Sunucu ram cache temizlemek için;

1- Sadece Page Cache Temizleme;

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

 

2- Sadece dentries ve inodes Cache Temizlemek için,

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

3- Page cache , dentries ve inodes Cache komple temizlemek için;

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

Bu işlemlerden önce ve sonra free -m komutu ile linux ram kullanımı kontrol edebilirsiniz.

Ram Cache Silmek için Cron Tanımlama

Kimse her gün ram cache temizleme işlemini yapmak istemez. Bu işlemi script haline getirelim ve linux ram cache temizlemek için bir cron tanımlayalım.

1- Linux sunucuya ssh yada baska bir program ile login oluyoruz. Biz .sh dosyasını /root/ dizinine ekliyecegiz. Siz duruma göre farklı dizine alabilirsiniz. Dosyamızı yaratalım.

nano /root/clearcache.sh

2- Ayrı ayrı kod girmektense echo 3 ile komple cache temizle diyelim. İlgili sh dosyanıza aşagıdaki gibi ekleme yapıyoruz. CTRL + X ve Y ile dosyamızı kaydedelim.

echo “echo 3 > /proc/sys/vm/drop_caches”

3- clearcache.sh dosyamızın yetkisini düzenliyoruz.

chmod 755 clearcache.sh

4- Crontab’a eklemek için;

crontab -e

5- Linux Cron ayarları için;

0 2 * * * /root/clearcache.sh

Dosyamızı kaydedip çıkıyoruz. Linux cache temizleme işlemini hergece saat 02:00 ‘de çalışacak sekilde ayarladık.

Linux Swap Alanı Temizlemek

Linux swap alanı temizlemek için ise aşagıdaki komutu kullanabilirsiniz. Kullanılan swap alanını görmek için df -h komutunu kullanabilirsiniz.

Linux swap temizleme komutu;

swapoff -a && swapon -a

Dilerseniz bu komutuda clearcache.sh dosyasına ekleyebilirsiniz.