Feed流架构

Feed流架构实践(一)-- 生产者

2019-07-16  本文已影响0人  魔改谢馒头

前两天看了篇文章,我也转发过来了,说的feed流框架,看着了就搞一搞,涉及到的技术也蛮实用的。

一、主流架构

主流架构

上图是对Feed流的最简单抽象,完成一个从生产者向消费者传递消息的过程。那看完这个过程先来建立三个项目,分别对应这三个模块。

生产模块

1.1 业务场景

用微博举例子,消息生产者就是千百万正在客户端发推文的用户。客户端的推文到达后端的server之后,微博系统需要让其他一些关注了这部分推主的用户在短时间内收到这部分消息。

为什么说是短时间内而不是实时

理由有很多,简单来讲,消费者端并不都是实时在线,而且同时也需要推送给可能会关联到的用户(例如一些品牌的关联品牌或者个人兴趣推荐)。何况百万级QPS的同步请求非常的耗资源、服务器一旦宕机消息就会丢失、体验会很不好。(这段是我编的)

1.2 设计思路

生产者模块需要抗住超高的并发量,所以处理的业务需要尽可能的少。
所以后端接口在接到请求后、经过简单的处理后转发至消息队列中,本项目中使用的是kafka。

1.3 实现

(我会同步更新到github上)
https://github.com/nds15763/Feed

1.4 补充
1.4.1 kafka
上一篇下一篇

猜你喜欢

热点阅读