RocketMQ源码分析(一)源码的各个模块

首先,你得有源码,这个网上都可以找到,各个版本大差不差;但是由于RocketMQ并入了Apache基金会,所以没了中文注释,看起来会有些费劲。

我这边用的是RocketMQ4.4.0的源码,仅对核心源码进行分析,扩展包里的就暂时不谈了。本篇文章我会解释这些模块大致是做什么用的,详细分析后续更新。

以下是源码的结构:


001.jpg

其中有几个模块是核心:

  1. namesrv:namesrv的核心代码,可以理解是mq的注册中心。
  2. broker:即大家常常说的消息队列本体代码,核心中的核心。
  3. client:消息客户端,包含消息生产者、消息消费者相关类 。
  4. remoting:远程通信和协议相关的代码,基于netty(rocketmq的通信部分就是由netty去实现的)。
  5. store:持久化,高可用HA相关的一些代码,也非常重要。
  6. filter:消息过滤的相关代码。
  7. acl:权限相关的代码。

接下来的文章我按顺序从这几个方面来分析RocketMQ:
1.路由发现
2.消息发送
3.消息存储
4.消息消费
5.消息过滤
6.高可用

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容