RocketMQ MQTT 快速开始
系统要求
- 64位操作系统,推荐 Linux/Unix/macOS
- 64位 JDK 1.8+
部署说明
由于RocketMQ-MQTT项目依赖RocketMQ底层的多队列分发,RocketMQ从4.9.3版本开始支持这一特性,因此您需要确认RocketMQ的版本升级到4.9.3或更高版本,并且确保以下配置项已开启:
enableLmq = trueenableMultiDispatch = true
RocketMQ-MQTT的部署参考项目说明,下载工程release版本或直接从源码构建。
git clone https://github.com/apache/rocketmq-mqttcd rocketmq-mqttmvn -Prelease-all -DskipTests clean install -Ucd 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 startsh mqtt.sh start
示例说明
RocketMQ-MQTT项目工程代码里面提供了基本的example代码,详见代码示例。
MqttConsumer.java // MQTT客户端启动订阅消息MqttProducer.java // MQTT客户端启动发布消息RocketMQConsumer.java //RocketMQ客户端启动订阅消息RocketMQProducer.java // RocketMQ客户端启动发布消息