跳到主要内容
版本:5.0

RocketMQ MQTT 快速开始

系统要求

  • 64位操作系统,推荐 Linux/Unix/macOS
  • 64位 JDK 1.8+

部署说明

由于RocketMQ-MQTT项目依赖RocketMQ底层的多队列分发,RocketMQ从4.9.3版本开始支持这一特性,因此您需要确认RocketMQ的版本升级到4.9.3或更高版本,并且确保以下配置项已开启:

enableLmq = true 
enableMultiDispatch = true

RocketMQ-MQTT的部署参考项目说明,下载工程release版本或直接从源码构建。

git clone https://github.com/apache/rocketmq-mqtt
cd rocketmq-mqtt
mvn -Prelease-all -DskipTests clean install -U
cd distribution/target/

源码构建完成后,编辑conf/service.conf,完成MQTT相关配置,如下

username=xxx    // 权限验证账户配置
secretKey=xxx // 权限验证账户配置
NAMESRV_ADDR=xxx //namesrv接入点
eventNotifyRetryTopic=xx //notify重试topic,提前创建
clientRetryTopic=xx //客户端消息重试topic,提前创建

还有其他更详细的配置和前置步骤参考 README.md

最后先启动meta服务(MQTT的元数据中心),再启动mqtt broker 。进入distribution/target/bin 目录,启动进程。

sh meta.sh start
sh mqtt.sh start

示例说明

RocketMQ-MQTT项目工程代码里面提供了基本的example代码,详见代码示例。

MqttConsumer.java  // MQTT客户端启动订阅消息
MqttProducer.java // MQTT客户端启动发布消息
RocketMQConsumer.java //RocketMQ客户端启动订阅消息
RocketMQProducer.java // RocketMQ客户端启动发布消息