关于微博的信息流是怎么实现的

2019-06-13 23:44:43 +08:00
 kingfly
有新浪的同学吗,一直想不明白改版后微博的展示逻辑是怎么实现的。例如,第一次刷新拉取到内容,点击刷新第二次再次拉取的内容不会和第一次有重复,再次点击刷新第三次拉取到的内容,不会和前两次重复。如果按照时间顺序还好实现,改版后不安时间拉取实在是想不明白原理。难不成要记录我每次浏览的内容 ID ?可是这样也没办法快速去重啊?求赐教。
2954 次点击
所在节点    问与答
17 条回复
NSAgold
2019-06-14 00:34:42 +08:00
微博现在有时间线了
leeZoom
2019-06-14 00:45:02 +08:00
布隆过滤器?
kingfly
2019-06-14 07:58:12 +08:00
@NSAgold 恩? 有了吗?
rogwan
2019-06-14 08:14:42 +08:00
微博应该是冷热数据分开处理的,主轴现在基本上都不是按时间顺序了,都是算法推荐。会给每个用户维护一个推荐列表,刷新过的内容,直接在列表里删除,所以你看不到重复推荐的内容。抖音推荐也是一样的思路,你重复刷新都是看不到相同内容的,因为数据是提前算好等在那里喂你的。
kingfly
2019-06-14 08:28:04 +08:00
@rogwan 没个用户一个表成本还是有点高了吧,最低也要百万级别了吧?不能用 MySQL 了,每个用户提前算,这成本也不小。抖音没怎么用过,也是乱序吗?
kingfly
2019-06-14 08:29:07 +08:00
@leeZoom 2#用布隆也没思路
rogwan
2019-06-14 08:37:41 +08:00
@kingfly 维护一个列表,不是维护一个表。热数据列表的实现方式很多了,只需要处理最近几天或者最近几百条数据,不会很大的。这种数据的更新策略也有不同的方式,数据量小就全局更新,数据量大可以按策略更新。
kingfly
2019-06-14 09:23:11 +08:00
@rogwan 感谢,我的疑惑,列表用尽了或者全量更新去重的问题。不太理解
rogwan
2019-06-14 10:31:00 +08:00
@kingfly 你可以测试一下微博的信息流,直接翻 100 页、200 页这样往下翻,就知道热数据用完了,微博系统其实自己就乱套啦。
nodwang
2019-06-14 11:48:15 +08:00
@rogwan 抖音和微博还是不同吧,抖音可从来没有刷到过重复的
rogwan
2019-06-14 13:43:17 +08:00
@nodwang 微博也不会刷到重复。
lifespy
2019-06-14 13:45:19 +08:00
我们最近也在做这个,插眼来看看大家的思路
dragonszy
2019-06-14 14:07:07 +08:00
战略马克,不太懂。信息茧房把人群分成 2000 种应该可以了吧?维护 2000 个细分信息流,中间随机插点实时的消息,分配给千万的用户,每个用户都以为是个性化。
hideonwhere
2019-06-14 18:25:07 +08:00
插眼
008px
2019-06-14 21:09:53 +08:00
插眼
kingfly
2019-06-15 01:08:09 +08:00
体验了抖音感觉信息流更牛逼
nodwang
2019-06-15 21:32:02 +08:00
看样不是一个简单业务流程能解决的问题

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/573735

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX