rocketmq 源码分析 运行 亲测 附图附代码 2018.12
1.rocketmq 源码下载
git clone https://github.com/apache/rocketmq.git
2. 运行namesrv启动方法 默认端口9876
# run
org.apache.rocketmq.namesrv.NamesrvStartup#main
# 会报错
Please set the ROCKETMQ_HOME variable in your environment to match the location of the RocketMQ installation
# 根据提示 配置ROCKETMQ_HOME 环境变量 工程根目录下找到/rocketmq/distribution 取这个绝对路径
ROCKETMQ_HOME=/Users/IdeaProjects/rocketmq/distribution 如下图
再次启动 OK
3.运行broker 启动方法
# 运行
org.apache.rocketmq.broker.BrokerStartup#main
# 报错 ROCKETMQ_HOME 需要配置环境变量 如上
# 同时 需要告诉broker Namesrv的地址 通过环境变量配置
NAMESRV_ADDR=127.0.0.1:9876
再次启动 ok
抱歉以下未整理 因为图片大小难以控制 仅给自己留个痕
界面工具已经连接到了namesrv
broker 已经连接到了namesrv
新建一个topic
我们上面选的1 这里只出现一个队列 如你设置5 就会有5个队列 这些队列会平分收到的消息 (生产者发送100条,则每个队列20条)
生产者启动后在这里可以查看到 消费者启动后也可以在这里看到
在这里可以看到生产者发的所有消息
消费者启动后不会停止 会一直监听消息队列, 一有新消息产生, 消费者就一直在打印