RocketMQ概念与架构
一般rockerMQ有四部分组成
nameserver 路由控制中心 主要包括broker的管理和tpoic查询 producer和consumer通过那么server就可以查到topic在哪个broker上
producer 负责生产数据 会把产生的mg消息发送大borcker服务器 (生产环境会是一个机器组进行负载均衡)
brocker 负责接收从生产者发送过来的消息 并且存储下来 同时记录消息元信息 如:消费者的组 消费进度等等,结构上也分为master和slave,可以进行一对多slave 每个实例上不相互通信 所以每个nameserver上就会有一张完整的路由信息
如果挂机 会像正常的nameserver发送路由信息
(每个brocker和nameserver是长连接 定时上报注册 topic信息到所有的name server上)
consumer 负责消费消息 一般是后台任务异步消费 从brocker获取mg信息进行消费 (生产环境会是一个机器组进行负载均衡) 分为群集模式进行就是均衡消费 广播模式全量发给每个实例
topic(逻辑概念)表示一类消息 每条消息都属于一个topic 生产者会指定topic 消费者通过指定topic来订阅关注的业务消息
为了提升吞吐量可以设置一个或者多个message queue 消息可以并行发到各自的message-queue 消费者也可以批量通过meaage-queue消费
不怕大牛比自己牛,就怕大牛比自己更努力