Kafka 与传统消息系统简单比较 时间: 2018-09-01 17:42 分类: 消息中间件 ####传统消息系统 1. 队列模型 2. 发布订阅模型 > 队列模型 一群消费者从服务器读取记录,每条记录只会分发给其中一个消费者。 方便水平扩展,负载均衡 > 发布订阅模型 记录会分发给所有的消费者。 适用于广播事件,比如通知集群节点刷新缓存,但无法对不同的订阅者进行负载均摊。 ####Kafka 相对于传统消息系统,Kafka 消费组则对两种模型进行了融合,下图摘自 Apache Kafka 官方文档。 ![consumer-groups.png][1] 可以看到它既能够当做传统消息系统的队列模型来使用,分发到同一个消费组的的记录会被组里的消费者均摊消费,当消费组只有一个的情况下,就是传统的队列模型。 同时也可以当做传统消息系统的发布订阅模型来使用,分区的记录会分发给所有的消费组,当所有的消费组都只有一个消费者的情况下,就是传统的发布订阅模型。 以上两者组合起来使用就是如上图所示的架构了,即:使得传统的发布订阅者模型具备了负载均衡以及容错的功能,能够进行水平扩展。 [1]: https://0o0.me/usr/uploads/2018/09/1453916439.png 标签: 无
怎么联系你的,想请教个问题