后端redis缓存逻辑问题?-灵析社区

万码IY9FEO6U

各位后端大佬,最近接触redis。 业务场景是这样的,一个最简单的博客系统,我现在需要记录 文章的点赞总数 以及用户是否点过赞。 之前是用MySQL去做的很简单。现在我想用redis去做有以下一些疑惑: 假如A用户点完赞,点赞信息存在Redis。A用户刷新页面重新请求页面,后端从MySQL进行查询数据,但是那时候A用户的redis数据还没同步到MySQL(一天一同步,还是说多少时间最好),我是不是要循环MySQL查询出来的数据列表的同时再去Redis判断用户对当前循环的文章id是否点过赞?并且将MySQL的文章总数加上Redis记录的点赞总数再返回给前端吗?我不知道这样设计是不是对的。

阅读量:175

点赞量:0

问AI
万码用户
操作错了,既然你加入了redis,那么读写都要优先从redis里操作,如直接从数据库读写,那么数据是不可靠的,是错误的! 正确做法应当是项目启动后,所有的用到了redis的地方,都要优先从redis里读/写数据,如redis内不存在,才从数据库读,并缓存至redis,这样下次读取操作,才会从redis读到正确数据