DB کے آگے ایک cache-aside layer (Redis/Memcached) رکھیں تاکہ reads memory کو hit کریں، entries کو ایک TTL دیں اور write پر invalidate کریں، stampede protection شامل کریں تاکہ ایک cold key DB پر thundering herd نہ چھوڑے، اور hot keys کو replicas میں پھیلائیں تاکہ ایک مقبول key ایک واحد node کو نہ پگھلائے۔
┌── hit ──▶ return value
request ──▶ cache│
└── miss ─▶ lock ─▶ DB read ─▶ set(TTL) ─▶ return
│
(only ONE miss populates; others wait)
DB writes ──▶ invalidate/update key
