网站设计岗位做哪些事情,贵阳小程序商城建设,工信部备案查询系统,广州地铁站路线图RocketMQ系列开篇
今天开始学习RocketMQ相关系列源码。我会带着自己的目的去学习源码。所以不会像一般的技术博客一样#xff0c;写一个完整的流程#xff0c;介绍每一步干了啥。而是提出一个问题#xff0c;然后去看代码里面是怎么实现的。说明一下#xff0c;本次系列我…RocketMQ系列开篇
今天开始学习RocketMQ相关系列源码。我会带着自己的目的去学习源码。所以不会像一般的技术博客一样写一个完整的流程介绍每一步干了啥。而是提出一个问题然后去看代码里面是怎么实现的。说明一下本次系列我选的是roketMQ的5.0.0版本不同版本肯定代码都是有不同出入的但是思想是一样的大家可以借鉴。下面开始正题。
首先clone源码。然后就是本地运行了。
模块介绍
首先先介绍一下主要的模块
nameserv.其实就是一个注册中心。接收broker的注册保存broker的路由地址以供消费者和生产者查询。
broker。就是保存数据的地方。
comsumer和producter就不用说了生产者和消费者。
只要有个简单的认识就可以了后续我们会对每个模块进行解析。
本地运行
这里就只跑一个最简单的例子。
启动 nameserv
首先启动nameserv。找到nameserv这个模块下面的NamesrvStartup这个类启动后会发现报错说没有roketmq_Home。所以在启动类里面加上环境变量。
ROCKETMQ_HOMED:/project/ideaPorject/myProject/rocketmq/distribution启动broker
找到broker模块下面的BrokerStartup加上和上面同样的ROCKETMQ_HOME的环境变量然后启动
启动comsumer和producer
在example模块下面有个quickstart目录里面有消费者和生产者。他们的group不一样我们先改成一样。然后先启动comsumer再启动producer。就会发现控制台有消费和打印出来了。
至此我们的项目就启动完成了。