Paths/Backend Engineer/Caching & Performance / Invalidation & Measurement
Invalidate from Events, Not from Code
Time based expiry is a guess. Write the event driven invalidation that drops the entry the moment the data changes.
Validator
⏱ 0:00
IDLE — checks run live as you type commands; submit when done
01Requirements
live checks- File ~/backend/cache/invalidation.yaml exists○
- The config maps a domain event to the keys it invalidates○
- The config states the fallback expiry○
02Walkthrough
1 of 3 revealed- 01
Write the invalidation rules
Each event names the key pattern it invalidates. The pattern is built from the ids in the event - that is why the events carry them.
echo 'events:\n - name: order.updated\n invalidate:\n - "orders:detail:{order_id}"\n - "orders:list:{customer_id}"\n - name: order.cancelled\n invalidate:\n - "orders:detail:{order_id}"' > ~/backend/cache/invalidation.yaml - 2 locked · each failed submit reveals one
03Stuck?
0 of 3 revealedTake a hint without losing the lab — each one points at the thing to look at, not at the answer.
04AI Tutor
guides, never solvesTell me what you're stuck on — I'll nudge, not solve. Which requirement are you looking at?
04Notebook
saved locally in this browserlearner@lab — ubuntu:24.04
Session is disposable
↑/↓ recalls commands · Ctrl+Enter submits · type help for the command list