【数媒在线课堂】发布:在线课堂

我们引入了业界广泛使用的消息队列 Kafka 来作为内部消息传输的枢纽在线课堂

前面提到在线课堂了一些这么使用的原因:

减少长连接 Broker 内部状态在线课堂,让 Broker 可以无压力扩容

知乎内部已平台化在线课堂,支持水平扩展

还有一些原因是:

使用消息队列削峰在线课堂,避免突发性的上行或下行消息压垮系统

业务系统中大量使用 Kafka 传输数据在线课堂,降低与业务方对接成本

其中利用消息队列削峰好理解,下面我们看一下怎么利用 Kafka 与业务方更好地完成对接在线课堂

发布

长连接 Broker 会根据路由配置将消息发布到 Kafka Topic,同时也会根据订阅配置去消费 Kafka 将消息下发给订阅客户端在线课堂

路由规则和订阅规则是分别配置的在线课堂,那么可能会出现四种情况:

消息路由到 Kafka Topic,但不消费,适合数据上报的场景在线课堂

消息路由到 Kafka Topic,也被消费,普通的即时通讯场景在线课堂

直接从 Kafka Topic 消费并下发,用于纯下发消息的场景在线课堂

消息路由到一个 Topic,然后从另一个 Topic 消费,用于消息需要过滤或者预处理的场景在线课堂

这套路由策略的设计灵活性非常高,可以解决几乎所有的场景的消息路由需求在线课堂。同时因为发布订阅基于 Kafka,可以保证在处理大规模数据时的消息可靠性。

本站内容来自用户投稿,如果侵犯了您的权利,请与我们联系删除。联系邮箱:835971066@qq.com

本文链接:http://www.gmstar.cn/post/112.html