V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
kingfly
V2EX  ›  问与答

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

  •  
  •   kingfly · 2019-06-13 23:44:43 +08:00 via Android · 3175 次点击
    这是一个创建于 2019 天前的主题,其中的信息可能已经有所发展或是发生改变。
    有新浪的同学吗,一直想不明白改版后微博的展示逻辑是怎么实现的。例如,第一次刷新拉取到内容,点击刷新第二次再次拉取的内容不会和第一次有重复,再次点击刷新第三次拉取到的内容,不会和前两次重复。如果按照时间顺序还好实现,改版后不安时间拉取实在是想不明白原理。难不成要记录我每次浏览的内容 ID ?可是这样也没办法快速去重啊?求赐教。
    17 条回复    2019-06-15 21:32:02 +08:00
    NSAgold
        1
    NSAgold  
       2019-06-14 00:34:42 +08:00 via Android
    微博现在有时间线了
    leeZoom
        2
    leeZoom  
       2019-06-14 00:45:02 +08:00 via Android
    布隆过滤器?
    kingfly
        3
    kingfly  
    OP
       2019-06-14 07:58:12 +08:00 via Android
    @NSAgold 恩? 有了吗?
    rogwan
        4
    rogwan  
       2019-06-14 08:14:42 +08:00 via iPhone
    微博应该是冷热数据分开处理的,主轴现在基本上都不是按时间顺序了,都是算法推荐。会给每个用户维护一个推荐列表,刷新过的内容,直接在列表里删除,所以你看不到重复推荐的内容。抖音推荐也是一样的思路,你重复刷新都是看不到相同内容的,因为数据是提前算好等在那里喂你的。
    kingfly
        5
    kingfly  
    OP
       2019-06-14 08:28:04 +08:00 via Android
    @rogwan 没个用户一个表成本还是有点高了吧,最低也要百万级别了吧?不能用 MySQL 了,每个用户提前算,这成本也不小。抖音没怎么用过,也是乱序吗?
    kingfly
        6
    kingfly  
    OP
       2019-06-14 08:29:07 +08:00 via Android
    @leeZoom 2#用布隆也没思路
    rogwan
        7
    rogwan  
       2019-06-14 08:37:41 +08:00 via iPhone   ❤️ 1
    @kingfly 维护一个列表,不是维护一个表。热数据列表的实现方式很多了,只需要处理最近几天或者最近几百条数据,不会很大的。这种数据的更新策略也有不同的方式,数据量小就全局更新,数据量大可以按策略更新。
    kingfly
        8
    kingfly  
    OP
       2019-06-14 09:23:11 +08:00 via Android
    @rogwan 感谢,我的疑惑,列表用尽了或者全量更新去重的问题。不太理解
    rogwan
        9
    rogwan  
       2019-06-14 10:31:00 +08:00 via iPhone
    @kingfly 你可以测试一下微博的信息流,直接翻 100 页、200 页这样往下翻,就知道热数据用完了,微博系统其实自己就乱套啦。
    nodwang
        10
    nodwang  
       2019-06-14 11:48:15 +08:00
    @rogwan 抖音和微博还是不同吧,抖音可从来没有刷到过重复的
    rogwan
        11
    rogwan  
       2019-06-14 13:43:17 +08:00 via iPhone
    @nodwang 微博也不会刷到重复。
    lifespy
        12
    lifespy  
       2019-06-14 13:45:19 +08:00
    我们最近也在做这个,插眼来看看大家的思路
    dragonszy
        13
    dragonszy  
       2019-06-14 14:07:07 +08:00
    战略马克,不太懂。信息茧房把人群分成 2000 种应该可以了吧?维护 2000 个细分信息流,中间随机插点实时的消息,分配给千万的用户,每个用户都以为是个性化。
    hideonwhere
        14
    hideonwhere  
       2019-06-14 18:25:07 +08:00
    插眼
    008px
        15
    008px  
       2019-06-14 21:09:53 +08:00 via Android
    插眼
    kingfly
        16
    kingfly  
    OP
       2019-06-15 01:08:09 +08:00 via Android
    体验了抖音感觉信息流更牛逼
    nodwang
        17
    nodwang  
       2019-06-15 21:32:02 +08:00
    看样不是一个简单业务流程能解决的问题
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3018 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 13:56 · PVG 21:56 · LAX 05:56 · JFK 08:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.