红木家具网站模板,wordpress 文章模块,新淘客wordpress,专业建站模板在最近#xff0c;我所写的这个项目需要使用到rocketMQ#xff0c;为了图方便我便使用的是Windows版本的#xff0c;但是在使用的过程中首先是发现无法发送消息出去#xff0c;报错信息为 org.apache.rocketmq.client.exception.MQClientException: Send [3] times, still …在最近我所写的这个项目需要使用到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的配置加了以下这些信息
#所属集群名字
brokerClusterNamerocketmq-cluster
#broker名字注意此处不同的配置文件填写的不一样
brokerNamebroker-a
#0 表示 Master0 表示 Slave
brokerId0
#nameServer地址分号分割
namesrvAddr127.0.0.1:9876
#Broker 对外服务的监听端口
listenPort10911
#Broker监听的ip
brokerIP1127.0.0.1
brokerIP2127.0.0.1#在发送消息时自动创建服务器不存在的topic默认创建的队列数
defaultTopicQueueNums4
#是否允许 Broker 自动创建Topic建议线下开启线上关闭
autoCreateTopicEnabletrue
#是否允许 Broker 自动创建订阅组建议线下开启线上关闭
autoCreateSubscriptionGrouptrue
#删除文件时间点默认凌晨 4点
deleteWhen04
#文件保留时间默认 48 小时
fileReservedTime120
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog1073741824
#ConsumeQueue每个文件默认存30W条根据业务情况调整
mapedFileSizeConsumeQueue300000enablePropertyFiltertruetransactionTimeout3000
transactionCheckMax5
transactionCheckInterval2000
然后还是没有用然后我就怀疑是不是防火墙的问题然后我把防火墙关闭之后依然无效然后后面尝试了更换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的过程也疯狂踩坑一开始不知道为什么无法解压下载的jdk的gz压缩包后面发现是上传的问题上传的时候可能出现了文件遗失我觉得是xshell的问题在我尝试了很多之后都无法安装jdk之后内心很是崩溃然后后面我重启了电脑重启了虚拟机决定一切重新开始这时候发现能够解压了然后后面配置了环境变量然后source /etc/profile 还是原本的openJDK然后我又重新创建了文件夹重新配置然后修改了环境变量的配置为 export JAVA_HOME/app/jdk1.8.0_391/PATH$JAVA_HOME/bin:$PATH:$HOME/.local/bin:$HOME/binexport 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