Ön Bellek (Cache)
Sistem Analizi
Normal Davranış
Uygulamalardan okuma sorgularını (read queries) alır, önbellek isabetinde (cache hit) önbelleğe alınmış verileri anında döndürür ve önbellek ıskalamasında (cache miss) kaydı temel veritabanından getirir, atanmış bir Yaşama Süresi (Time-to-Live - TTL) veya tahliye politikası (eviction policy - örneğin LRU: En Az Yakın Zamanda Kullanılan) ile bellekte depolar ve istemciye döndürür.
Çöküş Davranışı
Bir anahtar sona erme (key expiration) zinciri, binlerce eşzamanlı önbelleğe alınmamış sorguyu doğrudan ilişkisel veritabanına gönderen bir gürleyen sürüye (cache stampede - önbellek izdihamı) neden olur ve veritabanı bağlantı havuzu tükenmesine (connection pool exhaustion), aşırı CPU sıçramalarına ve tam bir uygulama kesintisine (outage) yol açar.
İş Sonuçları
Bir önbelleğe alma katmanı (caching layer) tehlikeye girdiğinde, altta yatan sistemler bir 'önbellek izdihamı' (cache stampede) veya 'gürleyen sürü' (thundering herd) etkisi yaşar. Veritabanları ve akış aşağı (downstream) hizmetleri, ağır okuma trafiğinin tüm hafifletilmemiş darbesiyle aniden yüzleşir; bu da CPU kullanımının %100'e fırlamasına, yanıt sürelerinin milisaniyelerden saniyelere düşmesine ve nihayetinde kullanıcı işlemlerini ve reklam gelirlerini durduran tam sistem kesintilerine neden olur.
Görsel Tezahür
"Veritabanı CPU kullanımı grafikleri dikey olarak fırlarken uygulama yanıt gecikmesi (response latency) ısı haritalarının (heatmaps) tamamen kırmızıya dönmesi."
Satirical Behavior
"A temporary bucket for data that developers use to hide the fact that their database queries take three minutes to run."
Bilinen İsimler
Teknik Terminoloji
Hata Göstergeleri
Sistem Mimarisi
Kullanan Karakterler
FAQ
Normalde nasıl davranır?
Uygulamalardan okuma sorgularını (read queries) alır, önbellek isabetinde (cache hit) önbelleğe alınmış verileri anında döndürür ve önbellek ıskalamasında (cache miss) kaydı temel veritabanından getirir, atanmış bir Yaşama Süresi (Time-to-Live - TTL) veya tahliye politikası (eviction policy - örneğin LRU: En Az Yakın Zamanda Kullanılan) ile bellekte depolar ve istemciye döndürür.
Nasıl çöker?
Bir anahtar sona erme (key expiration) zinciri, binlerce eşzamanlı önbelleğe alınmamış sorguyu doğrudan ilişkisel veritabanına gönderen bir gürleyen sürüye (cache stampede - önbellek izdihamı) neden olur ve veritabanı bağlantı havuzu tükenmesine (connection pool exhaustion), aşırı CPU sıçramalarına ve tam bir uygulama kesintisine (outage) yol açar.
İş sonuçları nelerdir?
Bir önbelleğe alma katmanı (caching layer) tehlikeye girdiğinde, altta yatan sistemler bir 'önbellek izdihamı' (cache stampede) veya 'gürleyen sürü' (thundering herd) etkisi yaşar. Veritabanları ve akış aşağı (downstream) hizmetleri, ağır okuma trafiğinin tüm hafifletilmemiş darbesiyle aniden yüzleşir; bu da CPU kullanımının %100'e fırlamasına, yanıt sürelerinin milisaniyelerden saniyelere düşmesine ve nihayetinde kullanıcı işlemlerini ve reklam gelirlerini durduran tam sistem kesintilerine neden olur.
What is the difference between Cache-Aside (Lazy Loading) and Write-Through caching patterns?
In Cache-Aside, the application first checks the cache and, on a miss, reads from the database and updates the cache manually. In Write-Through, the application writes directly to the caching layer, which synchronously updates both the in-memory cache and the backend database before returning success, ensuring strong read consistency at the cost of higher write latency.
How does the XFetch algorithm prevent cache stampedes on hot keys?
XFetch introduces probabilistic early recomputation: as a cached item approaches its expiration time, background read requests probabilistically trigger an asynchronous database refresh based on compute time, remaining TTL, and access frequency, refreshing the key before it ever completely expires.
Sistemi keşfet
AI özeti
Cache is a DATA_AND_STORAGE system in TinyCTO.tv. Receives read queries from applications, returns cached data immediately on a cache hit, and on a cache miss fetches the record from the underlying database, stores it in memory with an assigned Time-to-Live (TTL) or eviction policy (such as LRU - Least Recently Used), and returns it to the client.
