关于收藏统计数的问题
1. 背景
系统需求有一个用户收藏帖子的功能,并且在用户主页需要展示收藏数量。如果展示收藏数量的时候实时去count统计的话这样子的性能感觉会比较差,所以在用户表维护了一个收藏帖子数量的字段,在收藏以及取消收藏的时候去自增或者自减。
2. 问题
因为帖子是可以删除、上下架的,现在只在用户收藏以及取消收藏的时候去维护数量,一旦用户上下架之后,用户收藏数量跟收藏列表就会出现不一致的情况。
1). 暂时想到的解决方法
在帖子删除、上下架的时候去维护收藏这篇帖子的用户的收藏数量,但是这种做法带来的弊端是显而易见的。每次都需要去查询收藏这边帖子的用户再去维护数量
:grin:
参考视频站
视频失效时,不对收藏者做处理
收藏者查看收藏时,显示
n
个视频已失效,点击清理把用户收藏帖子的总数存到 redis
查看主页时:在 redis 中获取,如果没有到数据库中查 count ,再存 redis
收藏帖子的:收藏完成后,删除 redis 中用户收藏帖子总数
删除帖子时:删除完成后,删除 redis 中用户收藏帖子总数
帖子删除,但是收藏记录未删除,如何看待多表查询