Linux Cache mantığı nasıl işliyor?
Nasıl ki tarayıcılarımız gezindiğimiz sitelerin ardından bilgisayar içerisinde site verilerini saklıyor ise, linux işletim sistemi yapısı ve kullanım şekline bağlı olarak sunucu Ram datalarını kendi üzerinde tutar. Linux cache yapısı ve çalışma şekli, belli bir süre sonra sunucu üzerinde aşırı kaynak kullanımı olarak gözükebilir. Bu durumu örneklerle betimlememiz gerekirse tarayıcı geçmişinin sağlanmasına benzetebiliriz.
Peki linux sunucularda cache temizliğini otomatik olarak nasıl yapabiliriz?
Sunucumuza putty veyada farklı bir client program aracılığıyla SSH üzerinden eriliyoruz. Linux sunucu üzerinde oluşan ve cache verilerini temizlemek için sırasıyla aşağıdaki 3 komutu uygulayabilirsiniz.
1 2 3 | sync; echo 3 > /proc/sys/vm/drop_caches sync; echo 2 > /proc/sys/vm/drop_caches sync; echo 1 > /proc/sys/vm/drop_caches |
*/10 * * * * sync; echo 3 > /proc/sys/vm/drop_caches
Bu işlemi sunucu altında cron olarak çalıştırmanız daha mantıklı olacaktır. İşlem detayı için Uğur Ünal’dan bilgi aldım (umarım index alır) kendisi /var/spool/cron içerisinden işlem yapılacağını söyledi fakat daha kısa bir yolu crontab -e bu komut sayesinde direkt sunucuya işlemi cron olarak tanımlayabilirsiniz.
Ardından free -m komutu ile sunucu üzerindeki kullanılan ve boşta kalan ram miktarını görebilirsiniz.