之前有写过啥是消息中间件,如何单机安装RockMQ,接下来让我们看看什么是RockMQ是重点学习的。一些夸它的话就不累赘了。先明白RocketMQ 是基于发布订阅模型的消息中间件。所谓的发布订阅就是说,consumer 订阅了 broker 上的某个 topic,当 producer 发布消息到 broker 上的该 topic 时,consumer 就能收到该条消息。这得看RockMQ部署结构图了。
一、RockMQ部署结构
先来一张图,我们能用图说话,就不用字,能用红包就不开口哈~
画的不好,但是就是表达RockMQ部署结构图里面各个组件相互之间的关联:
一、nameServer是集群管理中心,就像kafka的集群管理中心为zookepper一样,RockMQ有自己的集群管理。nameServer像是一个路由器控制中心,开启之后会监听端口,等待broker、productor、comsumer 的连接。
二、broker和所以的nameServer之间也是使用长连接保持联系的,将其端口、IP、所有的topic信息都放在心跳包里面和nameServer取得联系后并且在其中注册,这样每一个对应的topic在nameServer集群中都可以找到和Broker的映射。
三、在发送消息之前的话,是需要先创建topic的,需要指定Topic存储在哪些Broker上又或者通过在发消息的时候自动创建Topic。
四、Productor 先会和NameServe