Kada ka taɓa yin UPDATE posts SET views = views + 1 ga kowane event a post mai zafi — wannan row ɗaya yana zama lock bottleneck. Ƙara a Redis, batch-flush zuwa DB kowane 'yan daƙiƙu, kuma ka karanta adadin daga Redis. DB yana adana jimlar durable, ba live traffic ba.
Gine-gine
Client tap ─▶ API ─▶ Redis INCR views:{post} (live, source of truth for reads)
│ └── dedup: SADD seen:{post} {user/ip}
▼
every ~5s / N ops
Flusher ─▶ UPDATE posts SET views = views + delta (durable)
▲
read path: GET Redis (fallback DB on miss)
