RocketMQ的下载与安装


一、MQ概述

1.MQ是什么

MQ全称为Message Queue,即消息队列 ,是一种提供消息队列服务的中间件,也称为消息中间件,是一套提供了消息生 产、存储、消费全过程的软件系统,遵循FIFO原则。

2.MQ的使用场景

  • 限流削峰

    MQ可以将系统的超量请求暂存其中,以便系统后期可以慢慢进行处理,从而避免了请求的丢失或系统 被压垮。

  • 异步&解耦

    上游系统对下游系统的调用若为同步调用,则会大大降低系统的吞吐量与并发度,且系统耦合度太高。 而异步调用则会解决这些问题。所以两层之间若要实现由同步到异步的转化,一般性做法就是,在这两层间添加一个MQ层。 即使消费者挂掉也不影响生产者工作,只要把消息放入队列即可,消费者重启后自己消费即可。

  • 数据收集

    分布式系统会产生海量级数据流,如:业务日志、监控数据、用户行为等。针对这些数据流进行实时或 批量采集汇总,然后对这些数据流进行大数据分析,这是当前互联网平台的必备技术。通过MQ完成此 类数据收集是最好的选择。

  • 大数据处理

    比如我们的平台向“三方平台”获取数据,一次请求了大量数据回来要进行处理,由于数据较多处理不过来,那么就可以放入MQ,再创建一些消费者进行数据处理即可。

注意】如下情况不太适合MQ

  • 小项目,体量不大,并发量低的使用MQ会太过笨重 - 你可以考虑使用Redis做一个消息队列。
  • 对数据的一致性有要求(强一致性)的的场景不适合使用MQ,因为MQ是异步的。

二、下载

官网下载地址:https://rocketmq.apache.org/download/,我这里下载的版本是5.1.0,也可根据自己的喜好下载其他版本

在这里插入图片描述

三、安装

1.解压安装

1.将下载好压缩包解压到一个无空格无中文的目录下

在这里插入图片描述

2.配置环境变量

变量名:ROCKETMQ_HOME
变量值:MQ解压路径\MQ文件夹名(bin目录的上一级即可)

在这里插入图片描述

四.启动RocketMQ

1.启动NameServer

在bin目录下执行cmd命令呼出命令框,执行 start mqnamesrv.cmd,启动NameServer。

在这里插入图片描述

2.启动Broker

在bin目录下执行cmd命令呼出命令框,执行 start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable = true,启动Broker。

在这里插入图片描述

至此完成RocketMQ的启动。

3.RocketMQ存储结构

RocketMQ安装好之后会在用户目录下产生一个 store 目录用来存储相关数据

在这里插入图片描述

  • Commitlog : 消息是存储,在commitlog目录中,以mapperdFile文件顺序存储消息。

  • Config : 存放运行期间的配置文件

  • Consumerqueue : 该目录中存放的是队列,consume queue存放着commitlog中的消息的索引位置

4.注意事项

启动报错:弹出提示框‘错误: 找不到或无法加载主类 xxxxxx’的处理

找到bin目录下的runbroker.cmd文件打开并修改%CLASSPATH%,加上双引号并重新start

在这里插入图片描述

内存不足报错:RocketMQ默认的虚拟机内存较大,启动如果因为内存不足报错则需要编辑bin目录下的runbroker.cmd和runserver.cmd,从而来修改默认的JVM内存大小;根据自己的需求修改即可。

runserver.cmd→对应的是nameServer的配置

在这里插入图片描述

例如:配置以下参数将 RocketMQ 的启动 JVM 的 堆空间内存控制在 1g,新生代控制在 512m。元空间初始 128m,最大 320m。

在这里插入图片描述

runbroker.cmd →对应的是broker的配置

在这里插入图片描述

五、RocketMQ可视化插件

1.下载插件

可视化界面下载地址:https://gitcode.net/mirrors/apache/rocketmq-dashboard?utm_source=csdn_github_accelerator,直接克隆源码到本地,使用IDEA启动即可,也可下载ZIP包在使用IDEA打开。

在这里插入图片描述

2.启动插件

打开后可在application.yml中进行端口修改,我这里使用的默认端口。

在这里插入图片描述

在IDEA中启动项目后用浏览器访问http://localhost:8080即可。

在这里插入图片描述

3.打包插件

我们在实际使用中,并不可能每次都要打开IDEA来运行可视化插件,这样很麻烦,我们可以直接将其打成jar包,用命令运行即可。在rocketmq-dashboard目录下执行 mvn clean package -Dmaven.test.skip=true。当然也可以直接用IDEA打包。

在这里插入图片描述

打包成功后会在target目录下生成一个jar包

在这里插入图片描述

执行 java -jar rocketmq-dashboard-1.0.1-SNAPSHOT.jar 启动jar包,访问http://localhost:8080

在这里插入图片描述

4.快速启动MQ

要启动MQ总共要执行三个命令,很麻烦还不一定都记得住,那么我们就可以自己写一个启动MQ的脚本,三个命令都放进去,直接双击完成启动。在这之前,需要把打好的jar包放到一个固定的位置,我这里直接放到RocketMQ的安装路径下。然后创建文本rocketmq-start.txt,内容如下:

#特别注意:启动NameServer和Broker是在bin目录下
#启动NameServer
start bin\mqnamesrv.cmd
#启动Broker
start bin\mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true
#启动可视化插件
java -jar rocketmq-dashboard-1.0.1-SNAPSHOT.jar

保存后将后缀改成bat,发送快捷方式到桌面就可以双击启动了。

在这里插入图片描述

双击后同时弹出这三个弹窗表示启动RocketMQ成功

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值