Naast de basis cache-aside bestaan er verscheidene caching strategieën — cache-aside, write-through, write-behind, read-through — elk met verschillende trade-offs qua consistentie en performance. Het begrijpen ervan (en eviction policies) helpt je om effectief cachen te ontwerpen.
Cache-aside (lazy loading — meest gangbaar)
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 en 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
