1. 下载源码
找一个目录,git https://github.com/apache/rocketmq.git将源码导入到本地。
2. 用idea打开
用idea打开rocketmq所在目录,idea会自动解决项目依赖。
3. 启动NamesrvStartup
双击shift键,在tab框里输入NamesrvStartup,打开,然后点击右上角的debug按钮启动。
4. 启动BrokerStartup
点击右上角的edit configuration按钮,然后在BrokerStartup启动配置项中配置namesrv地址,如下图所示:
捕获.PNG
5. 运行官方样例
在rocketmq-example的模块中,
1) 打开quickstart的Producer
- 修改producer group的名字
DefaultMQProducer producer = new DefaultMQProducer("p1");
- 修改namesrv的地址
producer.setNamesrvAddr("127.0.0.1:9876");
- 然后运行这个样例
2) 打开quickstart的Consumer
- 修改consumer group的name
//理解下rocketmq中的broadcasting和clustering的两种模式
DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("c1");
- 修改namesrv的地址
consumer.setNamesrvAddr("localhost:9876");
- 订阅producer中发送的topic和tag
*表示所有tag
consumer.subscribe("TopicTest", "*");
- 运行这个样例
- 其他
可以下载https://github.com/apache/rocketmq-externals/tree/master/rocketmq-console,这是一个可视化的图形界面,可以查看topic,发送的消息等内容非常的方便。
7. 快速执行本地rocketmq脚本
如果你不想源码启动nameserver和broker,只是想学习client的用法的话,具体如下。
- 下载二进制包 https://www.apache.org/dyn/closer.cgi?path=rocketmq/4.7.1/rocketmq-all-4.7.1-bin-release.zip
- 运行命令脚本 mqstart
把下面的命令粘贴复制到.zprofile(我的是oh-my-zsh),如果是其他的bash一样,
具体的路径替换成你的路径,效果就是一个命令开启namesrv,broker和控制台
alias mqstart="/Users/zihao/Documents/servers/rocketmq-all-4.3.1-bin-release/bin/mqnamesrv &;/Users/zihao/Documents/servers/rocketmq-all-4.3.1-bin-release/bin/mqbroker -c /Users/zihao/Documents/servers/rocketmq-all-4.3.1-bin-release/conf/broker.conf &;nohup java -jar /Users/zihao/Documents/servers/rocketmq-externals-master/rocketmq-console/target/rocketmq-console-ng-1.0.1.jar &"
- 关闭脚本命令 mqstop
效果就是关掉namesrv,broker和控制台
alias mqstop="/Users/zihao/Documents/servers/rocketmq-all-4.3.1-bin-release/bin/mqshutdown broker;/Users/zihao/Documents/servers/rocketmq-all-4.3.1-bin-release/bin/mqshutdown namesrv;sh /Users/zihao/Documents/servers/rocketmq-all-4.3.1-bin-release/bin/mqconsoleshutdown.sh"
mqconsoleshutdown脚本
#!/usr/bin/env bash
pid=`jps -m|grep 'rocketmq-console'|awk '{print $1}'`
if [ -n "$pid" ]
then
echo "kill rocketmq-console-jar,pid:" $pid
kill -9 $pid
fi
- 刷新配置文件
source .zprofile
网友评论