Помимо базового cache-aside, существует несколько стратегий кэширования — cache-aside, write-through, write-behind, read-through — каждая с различными компромиссами между согласованностью и производительностью. Понимание их (и политик вытеснения) помогает разработать эффективное кэширование.
Cache-aside (ленивая загрузка — наиболее распространённая)
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 и 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
