RocketMQ
文章平均质量分 92
MrFC
这个作者很懒,什么都没留下…
展开
-
RocketMQ源码解析——Consumer
目录: 了解消息消费者——Consumer: 消息消费以组的模式开展,一个消费组内可以包含多个消费者,每个消费者可以订阅多个主题,消费组之间有负载均衡(集群)模式和广播模式两种消费模式: 负载均衡(集群)模式:主题下的同一条消息,只允许其中一个消息消费者进行消费 广播模式:主题下的同一条消息,将被集群内所有的消费者消费一次 消息消费者和服务器之间的消息传递也有两种模式,推送模式、拉取模式: 推送模式:当消息到达服务器之后,服务器推送消息给消息消费者(所谓的推送模式实际上是基于拉取模式实现的,在以下的源原创 2021-09-25 17:46:52 · 648 阅读 · 0 评论 -
RocketMQ源码解析——消息存储
目录 1. 了解RocketMQ中的消息存储: 我们可以将RocketMQ整个发送消息的过程看做以下几个步骤: 消息生产者发送消息,并等待队列返回ACK 消息队列收到消息,并将消息进行持久化存储,在存储中新增一条消息记录 返回ACK给生产者(相当于告知生产者消息已经发送成功) 消息队列push消息给对应的消费者,然后等待消费者返回ACK 如果消息消费者在指定时间内成功返回ACK,那么消息队列就会认为消息消费成功,在存储中删除消息;如果消息队列在指定时间内没有收到ACK,则会认为消息消费失败,就会尝试重新原创 2021-09-20 18:19:01 · 637 阅读 · 0 评论 -
RocketMQ源码解析——Producer
目录: 了解消息生产者——Producer: RocketMQ中的消息生产者,主要负责生产消息、从NameServer中获取最新的Broker信息,以及将消息发送到Broker。 那么在源码中,消息生产者代码都在client包中,因为对于RocketMQ来说,消息生产者就是客户端。而最常用的消息生产者类是DefaultMQProducer: 从上图可以了解到DefaultMQProducer的上层的继承体系,其中实现两个核心的接口类。为了对DefaultMQProducer这个消息生产者类有深入的了解,先原创 2021-09-15 09:19:10 · 568 阅读 · 0 评论 -
RocketMQ源码解析——Broker
目录: RocketMQ源码解析——搭建源码环境 RocketMQ源码解析——NameServer RocketMQ源码解析——Broker 1. 源码解析: 首先找到Broker启动入口: public static void main(String[] args) { start(createBrokerController(args)); // 创建Broker控制器,并启动 } 创建Broker控制器: 可能有人会好奇,为了是创建Broker控制器呢?因为在开发的角度,控制器Con原创 2021-09-05 21:16:07 · 442 阅读 · 2 评论 -
RocketMQ源码解析——NameServer
了解RocketMQ核心组件——NameServer RocketMQ消息中间件的设计思路是基于主题订阅发布的机制,消息生产者(Producer)发送某一个消息到消息服务器,消息服务器负责将消息持久化存储,消息消费者(Consumer) ...原创 2021-08-30 22:53:51 · 388 阅读 · 1 评论 -
RocketMQ源码解析——搭建RocketMQ源码环境
本文旨在使用idea从远程仓库中将RocketMQ源码拉取到本地,并配置搭建环境,运行源码中的示例。 依赖环境: Idea JDK8 RocketMQ源码(从github或者gitee上拉取代码即可,本文是从gitee上拉取的源码) 1. 从远程拉取RocketMQ源码: 拉取后的源码目录如下: 2. 创建配置文件目录: 面对以上的源码目录,代码还不能运行,因为缺少对应的配置文件目录 因此,需要完成以下操作: 在项目根目录下创建conf目录 将distribution/conf目录下的logback_b原创 2021-08-22 10:48:31 · 447 阅读 · 0 评论