cache strategies

Scheduled Preloaded Cache

Planlanmış ve Önceden Yüklenmiş Cache Yönetemi

Bu cache stratejisinde hizmetimiz ayağa kalkarken db’mizde bulunan tüm veriler cachlenir ve gelen istekler db gitmek yerine direkt cacheden okunarak alınır. X zamanda bir db’mizde bulunan veriler cache yazılarak cache güncel tutulur. (Tabii ki X zaman kadar verilerimiz doğru olmayabilir %100 kararlı bir veri olmayacaktır.)

Read Through Cache

Ön Bellekten Okuma Yöntemi

Bu cache stratejisinde gelen istek cache'de mevcut mu diye kontrol edilir eğer değilse veri db’den çekilir ve cache sistemine kaydedilir. Bu şekilde gelecek bir sonraki işlem direkt olarak cacheden yüklenecektir.

Write Through Cache

Önbelleğe Yazma Yöntemi

Bu cache stratejisinde ise db’de yapılan create, delete, update gibi işlemlerden sonra veri anında cache yazılır veya cachede varsa güncellenir. Bu şekilde db ile cache daima senkron olacaktır. Tabii ki bu yapılacak olan create, update, delete gibi işlemlerin süresini uzatacaktır ve belli bir kaynağa maal olacaktır.

Preloaded Write Through Cache

Önceden Yüklenmiş Önbelleğe Yazma Yöntemi

Bu işlemde tüm veriler yine hizmetimiz ayağa kalkarken cache yazılır daha sonra cache yazılan bu veriler dinamik olması için her create, update ve delete eşlemlerinden sonra cachede bulunan veriler güncellenir. Bu şekilde verilerin kararlılık oranı çok yüksek olacaktır.

Distributed Cache vs Local Cache

Local cache genelde uygulamamız çalışırken ram belleğe alınan cachelerdir. Bu cacheler uygulamamız restart olduğunda veya yeni bir sürümü deploy almak istediğimizde otomatik olarak boşalacağından dolayı tekrar tüm verilerimizin cachelenmesi gerekecektir.

Dağıtılmış cache sisteminde cachelenen veriler farklı bir makinada veya hizmette depolanacağından dolayı uygulamamızın yeniden başlatılması vb durumlarda cache datamız sıfırlanmayacak ve kullanılabilir durumda olacaktır. Tabii bu yöntem için daha fazla kaynak gerekmektedir.

Kaynak: https://medium.com/outbrain-engineering/caching-strategies-in-high-throughput-systems-733189e62a4d

Last updated