分布式通信技术之发布订阅

发布订阅的基本工作原理

点对点模式: 虽然支持多个消费者,但是一个消息只能被一个消费者消费,不允许重复消费

发布订阅模式:消息中心通常以主题进行划分,每条消息都会有相应的主题,消息被存储到自己所属的主题中,订阅该主题的所有消费者均可以获取该消息

Kafka发布订阅原理及工作机制

基本架构

zookeeper集群统一协调和管理kafka组件,并存储一些元数据信息

Broker和Consumer

分区:

一个主题被划分成多个集合,分布在不同的broker上,不同的broker分布在不同的节点上。好处:

1. 实现负载均衡,避免单个broker的负载过高

2.实现消息的备份,从而保证系统的高可靠

分组:

消费组是多个消费者的集合,一个消费组中的消费者共同消费主体消息,并主题中的每个消息只能由消费组中的某一个消费组进行消费。主要目的是为了防止在消息过多的情况下,单个消费组消费能力有限时,导致消费效率过低

发布订阅的基本特征

1.实现了系统解耦,易于维护

2.实现了异步执行,避免高负载

观察者模式与发布订阅模式对比

观察者模式中观察者和被观察者之间直接交互,发布订阅模式中加入了消息中心,实现的是间接通信

posted on 2020-02-14 10:52  BattleScars  阅读(531)  评论(0编辑  收藏  举报