Đặt một tầng cache-aside (Redis/Memcached) trước DB để read chạm vào memory, gán mỗi entry một TTL và invalidate khi ghi, thêm chống stampede để một key nguội không xả một đàn request dồn vào DB, và trải hot key ra nhiều replica để một key phổ biến không làm chảy một node.
┌── hit ──▶ return value
request ──▶ cache│
└── miss ─▶ lock ─▶ DB read ─▶ set(TTL) ─▶ return
│
(only ONE miss populates; others wait)
DB writes ──▶ invalidate/update key
