Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
Caching Stratejileri: Cache-Aside, Write-Through, Write-Behind ve Cache Stampede
Cache-aside en yaygın strateji, ama popüler bir kaydın süresi dolduğu an bütün yük veritabanına iner: gerçek Redis denemesinde 200 eşzamanlı istek 200 sorgu üretiyor, request coalescing bunu 1'e indiriyor. Toplu ısıtılan 10.000 kayıt jitter'sız aynı saniyede sona eriyor, ±%10 jitter'la en kalabalık saniye 109 kayda düşüyor; XFetch ile erken yenileme 500 yeniden hesaplamayı 1'e indiriyor ve hot key'ler Redis'in LFU sayacıyla bulunuyor.
System Design Case Study: URL Shortener Tasarlamak
URL shortener okuma ağırlıklı bir sistemdir: saniyede ~40 yazmaya karşı ~3.900 redirect, bu yüzden stateless bir redirect yolu, cache-aside, çakışmasız ve tahmin edilmesi zor kodlar ve analytics için 301 değil 302 gerekir. Hesaplanmış capacity tablosu, hash çakışmalarının gerçek ölçümü, sayaç + bijective dönüşüm + base62, 301/302 curl çıktıları, alias, expiration ve kötüye kullanım.