Μην κάνετε ποτέ UPDATE posts SET views = views + 1 ανά event σε ένα hot post — αυτή η μία row γίνεται lock bottleneck. Κάντε increment στο Redis, με batch-flush στη βάση κάθε λίγα δευτερόλεπτα, και διαβάστε το count από το Redis. Η βάση αποθηκεύει durable σύνολα, όχι live traffic.
Αρχιτεκτονική
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)
