DBの前段にcache-aside層(Redis/Memcached)を置いて読み取りをメモリに当て、エントリにTTLを与え書き込み時に無効化し、コールドキーがDBにthundering herdを解き放てないようスタンピード保護を追加し、1つの人気キーが単一ノードを溶かさないようホットキーをレプリカに分散します。
┌── hit ──▶ return value
request ──▶ cache│
└── miss ─▶ lock ─▶ DB read ─▶ set(TTL) ─▶ return
│
(only ONE miss populates; others wait)
DB writes ──▶ invalidate/update key
