feed mysql表设计_Feed流系统设计实践(一)

关系内容Feed流

关系内容Feed流简单介绍

在当前任何具有社交场景的app应用中,用户之间会因为很多行为产生关系,例如微信好友的关系,当前各种陌生人社交软件喜欢的关系,微博粉丝与博 主的关系,当前各种直播软件中粉丝与主播的关系。当前产生关系之后,一个用户所有关注的用户产生的内容就形成Feed流,这个时候需要设计一个合理的Feed流系统。

现在大多数关系产生Feed流系统可以分为两种实践场景,一种是朋友圈类型,我在这里叫做wx类型,一种是微博关注博主类型,我在这里叫做wb类型。

wx类型场景,一个用户被关注的其他用户的数量上限不会太大,例如微信一个用户的好友多一点可能就几千人,这里可以设计为写扩散模式。

wb类型场景,一个用户被关注的其他用户的数量可能是一个很大的值,例如微博一个大V博主的粉丝可能达到几十万、几百万、几千万这种,这里需要设计为读扩散模式。

什么是写扩散模式,什么是读扩散模式?顾名思义,写扩撒,就是将一个内容写多份,例如一个用户发一条朋友圈内容,除了写入自己的朋友圈列表外,需要将这条朋友圈内容写入所有关注他的其他用户的朋友圈内容列表,这样就是一条朋友圈内容就的发布就要写入多个列表,这个就叫做写扩散;读扩撒,就是一个内容被多读,例如一个拥有千万粉丝的微博大V发布了一条微博,不可能将这条内容逐一写入到所有粉丝关注内容列表里,这样的一个内容写入时间会很长,这样会导致一次瞬间写入量会很大,如果一个时间段有很多大V同时发布微博,写扩散的模式对系统的性能会有很大的损耗,这样就只能先只写一份内容,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值