前面一篇博文讲述了 消息队列 的概念以及 RocketMQ 的架构,这一篇主要讲解使用。
博主本来不喜欢写博文,但是发现笔记经常丢,实习生也会经常问,所以觉得写博客记录一下比较好。从写 Spring Cloud Alibaba 以来,已经写了十九篇了,其实其中很多是拆分开的,不然大概四五篇就差不多了,不过这样一来会导致一篇博文太长,违反了单一职责,所以才拆成细粒度一点。
写啊写,写到 RocketMQ 的安装使用的时候,心态炸裂了,坑太多了,别人家的博文都不写详细,害的博主折腾了非常非常久,心态炸裂到仿佛回想起第一次弄Hadoop的时候 ╥﹏╥…
可是人家Hadoop是大项目,开始折腾就折腾了,你说你 RocketMQ 也这么折腾,哎,还是自己能力不足 (;´༎ຶД༎ຶ`)
以下的安装使用,有坑的地方博主会用红色字体标注出来。
首先我们需要安装下载RocketMQ
点击 http://rocketmq.apache.org/ 请根据图片操作。
下载完之后解压
进入到bin目录
这时候需要配置环境变量
这里的环境变量,需要你路径中不能有空格!!!!
ROCKETMQ_HOME 还好说,毕竟是我们自己刚刚解压的。可是!!!JAVA_HOME 就不是了,这个一般是很早以前安装的了,而且!!以前我们安装的时候都是一直点击下一步,无脑安装,这样它是会默认把java安装在
这里面,然而!!它是有空格的!!
无奈之下,博主只好在C盘下直接放一个JAVA,并且把路径指向过去
之后的坑就没那么大了…
紧接着,在刚才解压下的lib中打开控制台
输入
start mqnamesrv.cmd
启动成功
ps(如果电脑配置内存不够,可以先修改内存大小再启动)
继续cmd
输入
start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true
启动成功。
ps(如果电脑配置内存不够,可以先修改内存大小再启动)
下载方式有两种:
https://github.com/apache/rocketmq-externals/releases
https://github.com/apache/rocketmq-externals/tree/release-rocketmq-console-1.0.0
下载完之后是个Spring Boot 项目,需要打成jar包运行,有人喜欢直接用命令,博主喜欢用idea,因人而异吧,这里讲解利用idea编译打包。(以及采坑)
首先利用idea打开项目的pom文件,当我看到pom的时候,心凉了大半截…
看到这谁都得凉啊…
首先我们需要修改我们 rocketmq 的版本改成 4.7.1 对应我们刚才下载的版本,这边博主是改好了,它一开始进来可不长这样!
然后,坑!继续来!!
大伙把 plugins 里面的东西都给我删干净了!!!
最终我们把 plugins 改成这样就可以了!
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
修改配置
紧接着编译打包
跳过测试类!
编译过程如果遇到报错,什么类没有实现接口的方法啦,有的地方没有抛异常啦,加上,统统加上,编译过为止!
紧接着对编译完成的jar包,打开路径,cmd,运行
cmd 命令
java -jar rocketmq-console-ng-1.0.0.jar
访问启动的控制台项目
访问成功,一开始进去这里面是没有可视化图片的,这边有,是因为博主测试了,那么下面讲述测试。
RocketMQ自带了发送与接收消息的脚本tools.cmd,用来验证RocketMQ的功能是否正常。
继续进入到lib下 cmd
然后依次输入
set NAMESRV_ADDR=localhost:9876
tools.cmd org.apache.rocketmq.example.quickstart.Consumer
继续进入到lib下 cmd
然后依次输入
set NAMESRV_ADDR=localhost:9876
tools.cmd org.apache.rocketmq.example.quickstart.Producer
启动成功后,生产者会发送1000个消息,然后自动退出。
此时在观察控制台,就会发现有数据了~
都怪我才疏学浅,哎,太难了 ;´༎ຶД༎ຶ`)
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/qq_29064815/article/details/107368485
内容来源于网络,如有侵权,请联系作者删除!