设为首页 加入收藏

TOP

RocketMQ部署(一)
2023-07-23 13:27:11 】 浏览:317
Tags:RocketMQ 部署

RocketMQ部署手册

单MasterRocketMQ集群

系统要求与准备条件

  1. 64位操作系统,推荐 Linux/Unix/macOS

  2. 64位 JDK 1.8+

  3. Maven

    tips

    检验java环境与maven环境

    java -version

    截屏2022-09-15 15.20.46

    mvn -v截屏2022-09-15 15.20.09

下载安装Apache RocketMQ

RocketMQ 的安装包分为两种,二进制包和源码包,二进制包是已经编译完成后可以直接运行的,源码包是需要编译后运行的。

截屏2022-09-15 15.31.08

启动NameServer

### 启动namesrv
$ nohup sh bin/mqnamesrv &
 
### 验证namesrv是否启动成功
$ tail -f ~/logs/rocketmqlogs/namesrv.log
The Name Server boot success...

截屏2022-09-15 16.28.15

我们可以在namesrv.log 中看到 'The Name Server boot success..', 表示NameServer 已成功启动。

截屏2022-09-15 16.28.50

启动Broker

### 先启动broker
$ nohup sh bin/mqbroker -n localhost:9876 &

### 验证broker是否启动成功, 比如, broker的ip是192.168.1.2 然后名字是broker-a
$ tail -f ~/logs/rocketmqlogs/Broker.log 
The broker[broker-a,192.169.1.2:10911] boot success...

截屏2022-09-15 16.30.48

我们可以在 Broker.log 中看到“The broker[brokerName,ip:port] boot success..”,这表明 broker 已成功启动。

截屏2022-09-15 16.37.38

工具测试消息收发

在进行工具测试消息收发之前,我们需要告诉客户端NameServer的地址,RocketMQ有多种方式在客户端中设置NameServer地址,这里我们利用环境变量NAMESRV_ADDR

截屏2022-09-15 16.42.18

$ export NAMESRV_ADDR=localhost:9876
$ sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
 SendResult [sendStatus=SEND_OK, msgId= ...

$ sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer
 ConsumeMessageThread_%d Receive New Messages: [MessageExt...

截屏2022-09-15 16.44.46

截屏2022-09-15 16.44.15

安装可视化控制台

1.下载项目

在 GitHub 中搜索 rocketmq-externals,其中 rocketmq-console 就是 RocketMQ 可视化控制台,我们可以将源码克隆下来,然后自己 mvn package,然后运行 jar 包。

或者直接下载官方提供的 1.0.0 版本的 rocketmq-console

https://github.com/apache/rocketmq-externals/releases/tag/rocketmq-console-1.0.0

下载 zip 包或者 tar 包

截屏2022-09-15 17.29.41

  • 修改配置文件application.properties

    配置rocketmq.config.namesrvAddr属性的值,即nameserver的服务地址

    rocketmq.config.namesrvAddr=localhost:9876
    

截屏2022-09-15 17.32.25

  • 保存修改后的配置文件,返回rocketmq-console目录

  • 使用maven打包命令打包

    mvn clean package -Dmaven.test.skip=true
    
  • 打包完成后进入target目录

截屏2022-09-15 17.33.53

rocketmq-console-ng-2.0.0.jar即为打包后得到的jar包

  • 启动程序

    nohup java -jar rocketmq-console-ng-2.0.0.jar &
    

    截屏2022-09-15 17.38.01

截屏2022-09-15 17.38.48

SDK测试消息收发

准备工作

启动 NameServer 和 broker

nohup sh bin/mqnamesrv >mqnamesrv-log.txt &

nohup sh bin/mqbroker -n 127.0.0.1:9876 >mqbroker-log.txt &

启动控制台

mvn spring-boot:run

创建一个 topic名为 test_quick_topic

截屏2022-09-15 17.41.37

工具测试完成后,我们可以尝试使用 SDK 收发消息。这里以 Java SDK 为例介绍一下消息收发过程。

  • 在IDEA中创建一个Java工程。

  • pom.xml 文件中添加以下依赖引入Java依赖库。

    <dependencies>
        <dependency>
            <groupId>org.apache.rocketmq</groupId>
            <artifactId>rocketmq-client</artifactId>
            <version>4.9.4</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>2.0.13.graal</version>
        </dependency>
    </dependencies>

生产者

  • 同步投递10条消息
package TestProducer;
import org.apache.rocketmq.client.exception.MQBrokerException;
import org.apache.rocketmq.client.exception.MQClientException;
import org.apache.rocketmq.client.producer.DefaultMQProducer;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.common.message.Message;
import org.apache.rocketmq.remoting.exception.Remot
首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇在线的ios证书制作工具 怎么做 下一篇ios发布证书用于上架app_腾讯新闻

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目