Visualizers
Learn by moving things
Interactive explainers for the ideas behind retrieval, embeddings, and agents. A formula tells you what is true; dragging a vector shows you why. Each one also appears inside the article it belongs to, and runs entirely in your browser, so drag, poke, and break it.

Stale reads, and delete-on-write
From: Cache Invalidation: Keeping a Cache Honest →Cache and database start in sync; a write updates the database but not the cache, so reads return a fast, confident, wrong answer. The fix: delete the cache key on write, so the next read refetches.
Cache and database agree: both hold v1. Reads hit the cache and get the right answer, fast.
Versioned keys
From: Cache Invalidation: Keeping a Cache Honest →The cache key carries a version. When data changes you bump the version instead of editing in place; readers ask for the new key (miss, fill fresh) while the old one is orphaned and ages out. No stale window.
The cache key carries a version: item:42?v=1. Reads ask for it, hit, and get fresh data.
The cache stampede
From: The Cache Stampede: When a Hot Key Expires →A hot key expires and every request misses in the same instant, all flooding the database at once. Not steady load, a synchronized spike that can take the database down on its own.
The hot key is cached, so all five requests hit it, cheap and fast. The database is idle.