RocketMQ高手之路系列:开篇

2、点击绿色按钮出现源码下载项,点击蓝色按钮进行源码下载:

在这里插入图片描述

3、下载好后进行源码解压,使用Idea进行源码导入,导入后如下图所示:

在这里插入图片描述

二、源码结构介绍


在这里插入图片描述

如上图所示,RocketMQ的主要源码结构包括rocketmq-broker,rocketmq-client,rocketmq-common,rocketmq-filter,rocketmq-namesrv和rocketmq-remoting等模块,各个模块的主要作用如下:

rocketmq-remoting:封装MQ的通信框架,基于netty实现底层的通信;

rocketmq-broker:MQ系统的核心部件,提供轻量级的主题和队列机制来进行消息存储,包括相应的容错机制,它用来接收producer以及consumer的请求,支持集群部署、同步双写、异步双写等模式,可实现消息的持久化处理;

rocketmq-client:MQ的客户端,也就是producer以及consumer的统称;

rocketmq-filter:消息过滤服务;

rocketmq-store:存储层实现,包括索引服务等;

rocketmq-common:模块间的通用功能单元,配置文件、常量等;

rocketmq-distribution:脚本、配置模块,RocketMQ编译时,bin目录,benchmark目录,conf目录都是从这个模块编译输出;

rocketmq-namesrv:NameServer,类似服务注册中心,broker在这里注册,consumer和producer在这里找到broker地址

rocketmq-srvutil:只有一个ServerUtil类,只提供Server程序依赖,尽可能减少客户端依赖

三、RocketMQ架构


RocketMq具有低延迟、高性能、高可靠性、万亿级别的信息容量以及灵活的可扩展性。它主要由四个部分组成:名称服务器、代理、消息生产者、消息消费者,其中每一个部分都可以进行水平扩展,保证高可用。在RocketMq的官网中找到其架构图如下所示:

NameServer主要包含两个特性:

面试题总结

其它面试题(springboot、mybatis、并发、java中高级面试总结等)

y-1714444152353)]

[外链图片转存中…(img-b5ArvJcO-1714444152353)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值