RocketMQ单机安装详细教学

环境要求

 

 

1  我们下去RocketMQ官网下载

         下载 | RocketMQ

    

2  打开我们的虚拟机   把它拉到opt目录下  解压一下

 

 3    进到rocketmq-all-4.4.0-bin-release目录下     

       cd rocketmq-all-4.4.0-bin-release/

4   

      1.启动NameServer       和Eureka差不多(提供了路由管理、服务注册、互相通信)

 nohup sh bin/mqnamesrv &

      2查看启动成功没    vi nohup.out

5      在启动Broker时可能会遇到启动失败的问题,这是因为RocketMQ默认的虚拟机内存较大,启动Broker如果因为内存不足失败,需要编辑如下两个配置文件,修改JVM内存大小

vi runbroker.sh

JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m  -XX:MaxMetaspaceSize=320m"

 

 

vi runserver.sh

     JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m  -XX:MaxMetaspaceSize=320m"

 

配置好这两个配置文件  就可以启动 Broker

nohup sh mqbroker -n localhost:9876 &

 然后编辑 nohup.out

          vi nohuo.out

6 启动成功之后,开始测试

  (1)发送消息

# 1.设置环境变量

export NAMESRV_ADDR=localhost:9876       暂时设置环境变量,永久生效还得改/etc/profile

# 2.使用安装包的Demo发送消息

sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

   (2) 接收消息

# 1.设置环境变量

export NAMESRV_ADDR=localhost:9876

# 2.接收消息

sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

     

7 RocketMQ名词解释

   
 

  1. Topic(套配克)

消息主题,Topic是一种消息的逻辑分类,比如说你有订单类的消息,也有库存类的消息,那么就需要进行分类,就需要有两个Topic,一个是订单Topic存放订单相关的消息,一个是库存Topic存储库存相关的消息。

  1. Message

Message是消息。一个Message必须指定Topic,相当于寄信的地址。Message还有一个可选的Tag设置,以便消费端可以基于Tag进行过滤消息。也可以添加额外的键值对,例如你需要一个业务key来查找Broker上的消息,方便在开发过程中诊断问题。

  1. Message ID

消息的全局唯一标识,由消息队列 RocketMQ 版系统自动生成,唯一标识某条消息

  1. Message Key

消息的业务标识,由消息生产者(Producer)设置,唯一标识某个业务逻辑。

  1. Tag(标签)

消息标签,二级消息类型,用来进一步区分某个 Topic 下的消息分类。一般在相同业务模块中通过引入标签来标记不同用途的消息。以天猫交易平台为例,订单消息和支付消息属于不同业务类型的消息,分别创建 Topic_Order 和 Topic_Pay,其中订单消息根据商品品类以不同的 Tag 再进行细分,列如电器类、男装类、女装类、化妆品类等被各个不同的系统所接收。

  1. Producer

消息生产者,也称为消息发布者,负责生产并发送消息

  1. Producer 实例

Producer 的一个对象实例,不同的 Producer 实例可以运行在不同进程内或者不同机器上。Producer 实例线程安全,可在同一进程内多线程之间共享。

  1. Consumer

消息消费者,也称为消息订阅者,负责接收并消费消息。消费MQ上的消息的应用程序就是消费者,至于消息是否进行逻辑处理,还是直接存储到数据库等取决于业务需要。

  1. Consumer 实例

Consumer 的一个对象实例,不同的 Consumer 实例可以运行在不同进程内或者不同机器上。一个 Consumer 实例内配置线程池消费消息。

  1. Group

一类 Producer 或 Consumer,这类 Producer 或 Consumer 通常生产或消费同一类消息,且消息发布或订阅的逻辑一致。

  1. Group ID

Group 的标识。

  1. 队列

每个 Topic 下会由一到多个队列来存储消息。

  1. Broker

Broker是RocketMQ系统的主要角色,其实就是前面一直说的MQ。Broker接收来自生产者的消息,储存以及为消费者拉取消息的请求做好准备。

  1. Name Server

Name Server为Producer和Consumer 提供路由信息。NameServer可以看作是RocketMQ的注册中心

 8  关闭RocketMQ

# 1.关闭NameServer

sh bin/mqshutdown namesrv

# 2.关闭Broker

sh bin/mqshutdown broker

9  以上已经安转完成,下面安转可视化页面

(1) 下载路径

 Tags · apache/rocketmq-externals · GitHub

 2 修改配置文件(application.properties)看清楚路径 

(3) 在当前项目的目录下指向命令:进行打包

 mvn clean package -Dmaven.test.skip=true

如果没配置环境变量会出现错误

 需要去系统属性里面编辑一下环境变量

然后在已有的Path里面加个%MAVEN_HOME%\bin

 然后在输入一下指向命令:进行打包

mvn clean package -Dmaven.test.skip=true

打包完成之后target目录下有两个jar包

 

进行启动:

java -jar rocketmq-console-ng-1.0.1.jar

启动成功:

浏览器访问loaclhost:1016

 

当启动时连接不上远程RocketMQ时,需要先看一下系统环境变量是否配置,

# 1.设置环境变量

export NAMESRV_ADDR=localhost:9876

export NAMESRV_ADDR=localhost:9876(如果上面设置了就不需要了)

 制作作品不宜,点个赞关注一下把!!

欢迎有安装问题来咨询

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值