本文介绍: 最后终于顺利启动mq啦!在最近,我所写的这个项目需要使用到rocketMQ,为了图方便我便使用的是Windows版本的,但是在使用的过程中首先是发现无法发送消息出去,报错信息为。然后我就根据解决方案一个个进行排查,首先我去修改配置文件,各种修改发现没有用,修改conf中的broker配置,加了以下这些信息。这一切真的很不容易,我从前一天的下午五点 然后到第二天的晚上八点半才修好,总算成功完结了自己项目啦!然后我就把 安装文章中说的,把linux防火墙关掉了,然后后面就是配置mq,也是踩坑不少,

在最近,我所写的这个项目需要使用到rocketMQ,为了图方便我便使用的是Windows版本的,但是在使用的过程中首先是发现无法发送消息出去,报错信息

org.apache.rocketmq.client.exception.MQClientException: Send [3]
times, still failed, cost [66]ms, Topic: topic, BrokersSent:
[LAPTOP-VDCF1Q80, LAPTOP-VDCF1Q80, LAPTOP-VDCF1Q80] See
http://rocketmq.apache.org/docs/faq/ for further details.

大概意思就是发送过几次都无法发送出去,我在官方文档发现了有和我这个一样的报错问题提供,

在这里插入图片描述
然后我就根据解决方案一个个进行排查,首先我去修改配置文件,各种修改发现没有用,修改conf中的broker配置,加了以下这些信息

#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同配置文件填写的不一样
brokerName=broker-a
#0 表示 Master,>0 表示 Slave
brokerId=0
#nameServer地址,分号分割
namesrvAddr=127.0.0.1:9876
#Broker 对外服务监听端口
listenPort=10911
#Broker监听ip
brokerIP1=127.0.0.1
brokerIP2=127.0.0.1
 
#在发送消息时,自动创建服务器存在topic默认创建队列
defaultTopicQueueNums=4
#是否允许 Broker 自动创建Topic,建议线下开启线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启线上关闭
autoCreateSubscriptionGroup=true
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间默认 48 小时
fileReservedTime=120
#commitLog每个文件大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
 
enablePropertyFilter=true
 
transactionTimeout=3000
transactionCheckMax=5
transactionCheckInterval=2000

然后还是没有用,然后我就怀疑是不是防火墙问题,然后我把防火墙关闭之后依然无效,然后后面尝试更换mq版本发现依旧不行还是一样的报错,然后到后面发现直接启动不了broker了,都不是发送不了信息的问题了,然后发现由于mq持久化的保存磁盘上的,所以要把缓存文件给清楚,就是c盘中的store文件夹整个删除后就可以了,然后启动之后还是发现和最初的报错一样,无法发送信息出去,然后后面就决定要尝试mq部署linux上,试试linux上的mq能不能行,然后就先下载了VMware软件下载过程还是比较顺利的,我是在b站上看的视频中给的链接下载的不是在官网,因为我在官网注册不了账号知道为什么,然后安装好VMware之后,就安装centos 7,镜像文件的话是在阿里云的镜像网站直接下载的,速度还是可以的,然后安装centos 7的过程遇到很多问题,一开始设置错了,导致安装一直卡在 357/1400 到后面直接采用推荐安装,就不自定义安装之后就顺畅很多,但还是卡在 956/1400 然后百度之后发现是需要重新初始化网络环境
管理员启动cmd后在cmd输入以下命令
netsh winsock reset
然后就成功安装好了centos 7了,然后为了方便采用第三方软件链接虚拟机方便操控,一开始我选择了之前使用过的Xshell,然后后面发现无法上传文件,不知道为什么,一开始以为是没有使用root用户更换root用户之后还是不行,且还不会显示报错信息或者上传失败提醒,就直接没有反应,然后我就看了黑马linux课程,然后就换了 finalshell进行使用,然后这个软件至少会有上传失败显示,然后我发现上传失败是因为需要使用root用户,且要把链接用户的用户名设置那里也要改为root,然后就可以成功上传文件了,然后使用mq需要先给虚拟机安装jdk1.8以上的版本,然后安装jdk过程也疯狂踩坑,一开始不知道为什么无法解压下载jdkgz压缩包(后面发现是上传的问题,上传时候可能出现了文件遗失,我觉得是xshell的问题,在我尝试了很多之后都无法安装jdk之后,内心很是崩溃,然后后面我重启电脑重启虚拟机,决定一切重新开始,,这时候发现能够解压了,然后后面配置环境变量,然后source /etc/profile 还是原本的openJDK,然后我又重新创建了文件夹,重新配置,然后修改环境变量配置为:

 export JAVA_HOME=/app/jdk1.8.0_391/

PATH=$JAVA_HOME/bin:$PATH:$HOME/.local/bin:$HOME/bin

 export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/ 

然后再source时就发现安装成功了,
然后后面就是配置mq,也是踩坑不少,
非常感谢一篇文章CentOS下RocketMQ单机版安装

我一开始也修改jvm的配置文件,修改内存大小,但是启动时遇到这个问题
在这里插入图片描述
2023-12-04 19:38:56 INFO ShutdownHook – shutdown hook was invoked, 1 times.

然后我就把 安装文章中说的,把linux防火墙关掉了,
修改了broker的配置文件,增加了以下代码

namesrvAddr = 127.0.0.1:9876 //之前我设置的是虚拟机ip地址:9876,就不是本机地址autoCreateTopicEnable = true//这个设置自动创建主题

并且我也在环境变量添加了 ROCKETMQ_HOME 就是mq的文件路径
最后终于顺利启动mq啦!!,太激动了,idea链接mq只需要设置 rocketmq.nameServer=虚拟机ip地址:9876 就可以成功使用到linux的mq了,
这一切真的很不容易,我从前一天的下午五点 然后到第二天的晚上八点半才修好,总算成功完结了自己的项目啦!
希望大家可以修好bug

原文地址:https://blog.csdn.net/crisp0530/article/details/134795578

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_41124.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注