关于rocketMQ踩坑的那些事

在最近,我所写的这个项目需要使用到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=300000enablePropertyFilter=truetransactionTimeout=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的过程也疯狂踩坑,一开始不知道为什么无法解压下载的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!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/197339.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分布式搜索引擎elasticsearch(二)

1.DSL查询文档 elasticsearch的查询依然是基于JSON风格的DSL来实现的。 1.1.DSL查询分类 Elasticsearch提供了基于JSON的DSL(Domain Specific Language)来定义查询。常见的查询类型包括: 查询所有:查询出所有数据,一般测试用。例如:match_all 全文检索(full text)查…

Spring Bean的生命周期各阶段详解附源码

目录 Bean的生命周期Bean定义阶段Bean实例化阶段Bean属性注入阶段Bean初始化阶段Bean销毁阶段 Bean的生命周期 bean的生命周期,我们都知道大致是分为:bean定义,bean的实例化,bean的属性注入,bean的初始化以及bean的销毁…

基础课14——语音识别

ASR 是自动语音识别(Automatic Speech Recognition)的缩写,是一种将人类语音转换为文本的技术。ASR 系统可以处理实时音频流或已录制的音频文件,并将其转换为文本。它是一种自然语言处理技术,广泛应用于许多领域&#…

卷积神经网络(CNN):乳腺癌识别.ipynb

文章目录 一、前言一、设置GPU二、导入数据1. 导入数据2. 检查数据3. 配置数据集4. 数据可视化 三、构建模型四、编译五、训练模型六、评估模型1. Accuracy与Loss图2. 混淆矩阵3. 各项指标评估 一、前言 我的环境: 语言环境:Python3.6.5编译器&#xf…

VQD视频质量诊断服务/图像质量诊断/视频流质量诊断/传统方法与深度学习结合的视频质量诊断

随着平安城市、大安防的发展,监控摄像机数量的不断增加,给监控系统的维护工作带来了新的挑战。如何及时了解前端视频设备的运行情况,发现故障并检测恶意遮挡与破坏的不法行为已成为视频监控系统运行的首要迫切问题。对于成千上万个监控摄像机…

TCP 半连接队列和全连接队列

在 TCP 三次握手的时候,Linux 内核会维护两个队列,分别是: 半连接队列,也称 SYN 队列; 全连接队列,也称 accept 队列; 服务端收到客户端发起的 SYN 请求后,内核会把该连接存储到半连…

java 多种验证码

java 多种验证码 1.SpringBoot 引入jar包2. java 导入jar包3. 代码4. 效果图 1.SpringBoot 引入jar包 <dependency><groupId>com.github.whvcse</groupId><artifactId>easy-captcha</artifactId><version>1.6.2</version> </dep…

Spring Boot中使用Swagger

1. 启用Swagger 1.1 启用注解扫描和文档接口 直接在POM文件引入依赖 <dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.9.2</version> </dependency>1.2 启动swagger-u…

【Windows下】Eclipse 尝试 Mapreduce 编程

文章目录 配置环境环境准备连接 Hadoop查看 hadoop 文件 导入 Hadoop 包创建 MapReduce 项目测试 Mapreduce 编程代码注意事项常见报错 配置环境 环境准备 本次实验使用的 Hadoop 为 2.7.7 版本&#xff0c;实验可能会用到的文件 百度网盘链接&#xff1a;https://pan.baidu…

Shopee过期的折扣活动如何删除?Shopee促销商品如何下架?——站斧浏览器

商家们可以轻松删除虾皮过期活动以及下架促销商品&#xff0c;保持店铺的整洁和顾客的购物体验。那么shopee过期的折扣活动如何删除&#xff0c;shopee促销商品如何下架。 Shopee过期的折扣活动如何删除&#xff1f; 在删除虾皮过期活动时&#xff0c;商家们需要遵循以下步骤…

Deployment脚本部署Tomcat集群:外部访问、负载均衡、文件共享及集群配置调整

文章目录 前置知识一、Deployment脚本部署Tomcat集群二、外部访问Tomcat集群三、利用Rinted对外提供Service负载均衡支持1、创建服务2、端口转发工具Rinetd3、定义jsp文件查看转发到哪个节点 四、部署配置挂载点五、基于NFS实现集群文件共享1、master2、node3、验证 六、集群配…

Linux 进程

文章目录 进程定义进程的描述查看进程方法进程状态进程优先级进程相关概念补充 进程定义 大多数的说法&#xff1a;进程是计算机中正在运行的程序的实例。它是操作系统对程序的一种抽象&#xff0c;用于管理和调度程序的执行。 个人理解: 从OS(操作系统)开始说起&#xff0c;…

用户态和内核态

实际上任何Linux发行版(Centos/RedHat....)&#xff0c;其系统内核都是Linux。我们的应用都需要通过Linux内核与硬件交互。为了避免用户应用导致冲突甚至内核崩溃&#xff0c;用户应用与内核是分离的&#xff1a; 进程的寻址空间会划分为两部分&#xff1a;内核空间、用户空间。…

记一次引入低版本包导致包冲突,表现为NoClassDefFoundError的故障

简而言之&#xff0c;因为参考别的项目处理excel的代码if(org.apache.poi.hssf.usermodel.HSSFDateUtil.isCellDateFormatted(cell)) &#xff0c;为了使用这个HSSFDateUtil类我引入了依赖&#xff1a; <dependency><groupId>org.apache.poi</groupId><a…

LED恒流开关调节器FP7123,提供稳定电流,提升LED产品效果!

目录 一、FP7123概述 二、FP7123功能 LED恒流开关调节器FP7123的优势不仅仅在于提供稳定的电流&#xff0c;还包括以下几个方面&#xff1a; 三、应用领域 随着科技的不断发展&#xff0c;LED照明产品已经成为人们生活中不可或缺的一部分。然而&#xff0c;LED的亮度和稳定性…

二维码智慧门牌管理系统升级解决方案:存疑地址轻松管理

文章目录 前言一、存疑地址的统一管理二、数据查询、导出和编辑功能三、提交地址审核机制 前言 随着二维码智慧门牌管理系统在企业中的广泛应用&#xff0c;地址存疑成为了一个亟待解决的问题。为了帮助企业有效管理这些存疑地址&#xff0c;我们推出了升级解决方案&#xff0…

解雇 Sam Altman 的背后故事;梦露转 180°秒变爱因斯坦丨 RTE 开发者日报 Vol.98

开发者朋友们大家好&#xff1a; 这里是 「RTE 开发者日报」 &#xff0c;每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE &#xff08;Real Time Engagement&#xff09; 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文…

Javaweb之Vue路由的详细解析

5 Vue路由 5.1 路由介绍 将资代码/vue-project(路由)/vue-project/src/views/tlias/DeptView.vue拷贝到我们当前EmpView.vue同级&#xff0c;其结构如下&#xff1a; 此时我们希望基于4.4案例中的功能&#xff0c;实现点击侧边栏的部门管理&#xff0c;显示部门管理的信息&am…

如何安装Wnmp并结合内网穿透实现外网远程访问内网服务

文章目录 前言1.Wnmp下载安装2.Wnmp设置3.安装cpolar内网穿透3.1 注册账号3.2 下载cpolar客户端3.3 登录cpolar web ui管理界面3.4 创建公网地址 4.固定公网地址访问 前言 WNMP是Windows系统下的绿色NginxMysqlPHP环境集成套件包&#xff0c;安装完成后即可得到一个Nginx MyS…

抖音集团面试挂在2面,复盘后,决定二战.....

先说下我基本情况&#xff0c;本科不是计算机专业&#xff0c;现在是学通信&#xff0c;然后做图像处理&#xff0c;可能面试官看我不是科班出身没有问太多计算机相关的问题&#xff0c;因为第一次找工作&#xff0c;字节的游戏专场又是最早开始的&#xff0c;就投递了&#xf…