![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
RocketMQ
文章平均质量分 94
carl-zhao
I never grew up, but i never stop growing.
展开
-
8、RocketMQ 源码解析之消息发送
当我们启动了元数据管理 NameServer 以及 消息管理 Broker。下面我们就可以进行消息发送了。RocketMQ 支持三种消息发送方式:同步消息发送(sync):当 Producer 发送消息到 Broker 时会同步等待消息处理结果异步消息发送(async):当 Producer 发送消息到 Broker 时会指定一个消息发送成功的回调函数,调用消息发送后立即返回不会阻塞。消息发送成功或者失败会在一个新的线程中进行处理。单向消息发送(oneway):当 Producer 发送消息到 Br原创 2022-05-04 00:10:03 · 860 阅读 · 0 评论 -
7、RocketMQ 源码解析之 Broker 启动(下)
在前面的一篇文章 -- [6、RocketMQ 源码解析之 Broker 启动(上),分析了一下 Broker 在启动的时候他自身做了哪些事,以及把 Broker 相关的信息注册到 NameServer 中去,下面我们就通过 Broker 把元信息注册到 NameServer 来了解一下 RocketMQ 是如何进行网络间通信的。原创 2022-04-03 20:48:48 · 793 阅读 · 0 评论 -
6、RocketMQ 源码解析之 Broker 启动(上)
上面一篇我们介绍了 RocketMQ 的元数据管理,它是通过自定义一个 KV 服务器。并且其它服务在 NameServer 注册服务信息的时候都是全量注册。如果 RocketMQ 的拓扑图当中有多台 NameServer 的时候,只要有一台存活的话 RocketMQ 集群就可以正常工作。当 RocketMQ 作为消息队列要向外提供服务的时候,除了需要第一步启动 NameServer 用来保存元数据,还需要启动 RocketMQ 的 Broker。这样才能 Producer 才能发现消息到 Broke原创 2022-04-02 14:06:34 · 2905 阅读 · 0 评论 -
5、RocketMQ 源码解析之 命名服务启动
在 RocketMQ 当中,消息发送方以及消息接收方都是配置命名服务(Name Server)的地址。通过命名服务解耦合了消息发送者以及消息接收方,不同于 Kafka 直接连接 Broker 地址。命名服务的主要功能包含:Broker 管理以及消息的路由管理。具有如下:Broker 管理,NameServer接受来自 Broker 集群的注册,并提供心跳机制来检查Broker是否活着路由管理,每个NameServer将保存关于Broker集群的整个路由信息和供客户端查询的 queue (队列) 信息。原创 2022-01-07 22:02:05 · 2108 阅读 · 0 评论 -
4、RocketMQ 源码解析之 网络通信 Netty
可以看到 RocketMQ 里面有消息发送方(Producer)、配置中心(NameServer)、消息存储中心(Broker) 以及消息消费方(Consumer)。而且它们之间也需要相互通信的,那么它们是怎么通信的呢?因为 RocketMQ 是通过 Java 语言编写的,对于网络通信它就选择了 Netty 并且通过自定义协议来完成各个角色之间的高效的网络通信。原创 2021-12-26 14:06:47 · 1019 阅读 · 0 评论 -
3、RocketMQ 源码解析之 源代码环境搭建
在之前的文章中我们知道了 RocketMQ 里面的核心功能、架构和概念。并且也介绍了它的简单使用与 Spring Boot 的集成。下面开始我们对 RocketMQ 的源码探索,首先我们先在自己本地搭建 RocketMQ 的源代码环境。1、下载源代码首先我们可以在 rocketmq github 网站下载 Rocket MQ 的源代码,它是以 maven 进行项目管理的。接着把项目导入到自己的开发工具中,博主使用的是 Idea。导入 idea 如下图显示:下面我们来介绍一下项目中的各个 Modul原创 2021-12-22 21:37:14 · 672 阅读 · 0 评论 -
2、RocketMQ 源码解析之 与 Spring Boot 集成
上一篇文章分析了一下 RocketMQ 的基本架构、概念、安装以及使用方式。现在大多数项目都是基于 Spring Boot。因为它很方便的自动装配机制,所以现在构建项目都是基于 Spring Boot。下面我们来分析一下 RocketMQ 是如何集成 Spring Boot 的。RocketMQ主要由 Producer、Broker、Consumer 三部分组成,其中Producer 负责生产消息,Consumer 负责消费消息,Broker 负责存储消息。Broker 在实际部署过程中对应一台服务器原创 2021-12-21 22:29:54 · 580 阅读 · 0 评论 -
1、RocketMQ 源码解析之 Hello World
Apache RocketMQ是一个分布式消息传递和流媒体平台,具有低延迟、高性能和可靠性、万亿级容量和灵活的可伸缩性。原创 2021-12-20 21:18:53 · 420 阅读 · 0 评论