Prestanite usmjeravati sav promet na jedan ključ: podijelite vrući ključ na N pod-ključeva (shardirani brojači), sjedinite duplicirana čitanja, poslužujte iz lokalnog cachea i batchirajte upise tako da se jedan redak ne ažurira pri svakom zahtjevu. Jedan brojač "lajkova" na viralnoj objavi može primiti 50k upisa/s — jedan redak postaje usko grlo serijalizacije jer se svaka transakcija bori za isti lock.
Fan-out umjesto jednog borbenog retka
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)
