cache Caching (Önbelleğe Alma) Nedir ve Nasıl Çalışır?

Caching (Önbelleğe Alma) Nedir ve Nasıl Çalışır?

170

Caching (önbelleğe alma), bilgisayar sistemlerinde ve yazılımlarda sık kullanılan verilerin geçici olarak saklanmasıdır. Bu, veriye daha hızlı erişim sağlamak amacıyla yapılan bir optimizasyon tekniğidir. Temelde, bir veri veya hesaplama sonucu ilk kez talep edildiğinde, bu veri bir önbelleğe (cache) kopyalanır. Sonraki taleplerde, veriye erişim daha hızlı olur, çünkü veri önbellekte bulunmaktadır.

Günümüzde yazılım ve internet alanında çalışan her bileşen hızlı olmak zorunda. Hız yarışı öyle bir hal aldı ki SEO (Search Engine Optimization) çalışmalarının bile en temel bileşenlerinden biri site yüklenme hızı oldu.

Bir internet sitesinin yüklenme hızını ayarlayabilmek için yollar arayan yazılımcılar uzun zamandır veri alışverişi kolaylaştıracak altyapı ve yazılım konusunda çareler alıyor.

Bu çalışmaların en çok bilinen ve kullanılanı ise Cache işlemi. Caching yani Ön Belleğe alma işlemi, bir verinin tekrar istendiğinde kolayca bulunabilmesi için geçici bir hafızaya kaydedilmesine verilen isimdir.

What Is Cache? Learn This Common and Complex Technology

Neden Cache Kullanmaya İhtiyaç Vardır?

Aynı amaçla kullanılan veri kayıt ve depolama aygıtları bile değişken hızlarda çalışabiliyor. Ancak bilgisayar ve internet sistemlerinde veri akışı ihtiyacına göre değişken hızlarda çalışan hafıza alanları kullanılıyor. Cache bir veriyi kalıcı olarak kaydetmeden kullanmaya imkan veren bir  sistemdir, neden cache kullanmak zorundayız diye sorarsanız cevap;

  • Sistemin hızlı çalışmasını sağlamak,
  • Verinin geçici hafızada kullanılmasını sağlamak,
  • Gereksiz veri trafiğini (Bandwidth) önlemek,
  • Sistem kaynaklarının gereksiz kullanılmasını önlemek,
  • Kalıcı hafızanın (Storage) işgal edilmesini önlemek olacaktır.

Cache İşlemi Nerelerde Kullanılır?

Cache işlemi birçok alanda kullanılıyor. Sistemler cache işlemleri sayesinde daha hızlı ve daha stabil çalışma imkanı bulur. Örneğin;

  • Tarayıcı Önbelleği 
  • DNS Önbelleği
  • API Önbelleklemesi
  • CDN (Content Delivery Network) Önbelleği
  • Oturum Bilgisi (Session) Önbelleği

Tarayıcı Önbelleği

Bir web sitesine ait verilerin sunucudan bir kere istendikten sonra kayıt altında tutulması web sitesinin daha hızlı çalışmasına olanak tanır. Her tıklamada sunucu ile tekrar tekrar veri alışverişinde bulunma ihtiyacını ortadan kaldıran bu yöntem ile web kullanıcı deneyimi (User Experience) ciddi oranda artar.

DNS (Domain Name System) Önbelleği

DNS bir IP adresi ile alan adının (domain) birbirleri ile eşleştirildiği sisteme verilen isimdir. Özetle İnternetin Telefon rehberi gibi kayıtların tutulduğu sunucu sistemlerine DNS sistemi denir. Bir tarayıcıya bir alan adını yazdığınızda o alan adına ait internet sitesinin hangi Ip adresindeki sunucuda olduğunu bulabilmenin tek yolu DNS sistemidir.

DNS sunucuları da alan adları ve IP adreslerine ait güncel verileri belirli sürelerde tekrar tekrar güncellemesi gerekir. Bu güncelleme döngüsü de TTL denilen bir değer sayesinde ayarlanır ve gerçekleşir.

API Önbelleklemesi

API (Application Programming İnterface) denilen uygulama, bir başka kaynakta bulunan verinin tamamen farklı bir kaynakta kullanılmasına yardımcı olan bir arayüz uygulamasıdır. API sayesinde birbirinden farklı işletim sistemleri, veya programlar kendinde olmayan kabiliyetleri edinirler.

API iki uç tarafından bilinen bir kod sayesinde veri akışına izin veren bir sistemdir. Bu şekilde kurulan bağlantılar sırasında Caching işlemi ile kaydedilen veriler sayesinde kaynak ve alıcı arasında sürekli veri akışına gerek kalmadan süreçler sağlıklı bir şekilde işlemeye devam eder. 

CDN Önbelleği

CDN (Content Delivery Network) bir internet sitesinin dünya genelinde çok sayıda sunucu tarafından yaygın bir şekilde yayın yapıldığı sisteme verilen isimdir. Amerikadaki bir kullanıcının Avusturalya’dan yayın yapan bir sunucuya bağlanması zaman alacaktır.

Özellikle video içeriği yayını yapan siteler bu durumu aşmak için yaygın sunucular ile tüm kullanıcılara daha yakın kopya sunucular üzerinden yayın yapma yoluna gider. Kaynak (Orijin) sunucudan aldığı veriyi bir süre cache bellekte tutarak yansıtma işlevi görürler. Belirli bir süre sonra kaynak sunucuya döner ve sitenin güncel halini kaydederek yansıtmaya devam eder. 

Session (Oturum Bilgisi) Önbelleği

Bir kullanıcı bir internet tarayıcısına kullanıcı adı ve şifre yazarak müşteri paneline girdiğinde bu veriler önbelleğe kaydedilir. Bu kayıt işlemi (Caching) sayesinde kullanıcı tekrar tekrar kullanıcı adı ve şifre girme zorunluluğundan kurtulmuş olur.

TTL Nedir?

TTL (Time To Live) bir verinin geçerliliğini koruyacağının belirtildiği süreye verilen addır. TTL, saniye cinsinden belirtilen sürelerde bir verinin geçerli olacağını belirtir. Süre bittikten hemen sonra da sistem elindeki veriyi siler ve kaynaktan en güncel veriyi alarak kullanmaya başlar.

Tarayıcı Önbelleği (Cache) Neden Temizlenir?

Bir siteye ait veriler tarayıcıya kaydedilip tarayıcıdaki kopya üzerinden gösterim devam ederken bazı yükleme sorunları veya diğer bazı problemler nedeniyle hatalar ile karşılaşılabilir.

Bu durumda TTL (Time To Live) süresi bitmeden kaynak sunucudan siteye ait güncel verinin tekrar yüklenmesi gerekebilir. Bu işlem sayesinde Tarayıcı önbelleği temizlenir ve tarayıcın siteye ait en son veriyi sunucudan tekrar talep eder. 

Google Chrome kullanıcıları chrome://settings/clearBrowserData adresini adres çubuğuna yazarak tarayıcılarına ait önbelleği temizleyebilirler.


Article Tags: · · ·

Leave a Comment

Paylaş