सारा traffic एक key पर भेजना बंद करें: hot key को N sub-keys (sharded counters) में बांटें, duplicate reads को coalesce करें, एक local cache से serve करें, और writes को batch करें ताकि एक row हर request पर update न हो। एक viral post पर एक अकेला "likes" counter 50k writes/sec ले सकता है — एक row एक serialization bottleneck बन जाती है क्योंकि हर transaction एक ही lock के लिए लड़ता है।
एक contended row के बजाय fan-out
50k inc/sec on post:123
│
hash(request) % N (split the key)
┌────────┬────────┬────────┬────────┐
▼ ▼ ▼ ▼ ▼
likes:123:0 :123:1 :123:2 :123:3 :123:4 ← sharded counters
└────────┴───┬────┴────────┴────────┘
▼
SUM on read = total (read fans in)
