码迷,mamicode.com
首页 > 其他好文 > 详细

问题--关注列表和粉丝列表显示不稳定

时间:2016-07-15 10:57:19      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:

功能描述:绿色标签:已关注,  蓝色标签:互相关注 ,  红色标签:未关注

1、问题

(1)点开我的关注列表,里面应该出现的是绿色或者蓝色标签,但是有时候会出现红色标签,点击用户之后,发现是已关注状态。

(2)我是A,我关注了B,然后我点开B的关注列表,发现B的关注列表里面,显示有很多人我已经关注了,但实际上,我并没有关注。

2.问题排查

  (1)查代码发现取关注列表的时候,先根据用户的snsId从memcache中取出实体,如果实体不为空就把bean放入list ,然后继续循环。

  (2)如果1分钟缓存不存在,则从redis里面查,并判断是否被我关注

  (2)这样的话有一个隐藏的问题。如果C关注了B,C刷了一遍列表,那么此时会把B存入1分钟缓存,并且B的状态是已关注,(绿色标签)。

  这种情况下,D去刷C的关注列表,获取到B的snsId,然后从memcache查出B的实体,放入list,然后循环。那么问题就来了,因为C在刷列表的时候

存的B的实体,并且B的状态是绿色标签,那么D刷列表的时候,不管D有没有关注B,D刷出来的结果都是已关注。

3.解决方案

从1分钟缓存查出实体后,重新给isFollowed和isFollowing赋值,保证关注和被关注状态的实时性。

问题--关注列表和粉丝列表显示不稳定

标签:

原文地址:http://www.cnblogs.com/fubaizhaizhuren/p/5672798.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!