Perustavan cache-aside-mallin lisäksi on olemassa useita välimuistin strategioita — cache-aside, write-through, write-behind, read-through — joissa kullakin on erilaiset johdonmukaisuus- ja suorituskykyjakaumat. Näiden ymmärtäminen (ja poistokäytännöt) auttaa sinua suunnittelemaan tehokasta välimuistointia.
Cache-aside (lazy loading — yleisin)
App checks cache → miss → load from DB → populate cache → return.
✓ Only requested data is cached (efficient); resilient (works if cache is down)
✗ First request is a miss (slower); cache can be stale until TTL/invalidation
→ The default, most common strategy.
Write-through ja write-behind
WRITE-THROUGH → write to cache AND DB together (synchronously) on every write
✓ Cache always fresh/consistent ✗ Writes are slower (two writes); caches unread data
WRITE-BEHIND (write-back) → write to cache immediately, write to DB ASYNC later
✓ Fast writes ✗ Risk of data loss if cache fails before the DB write; more complex
