RabbitMQ开启MQTT协议支持_rabbitmq 开启mqtt功能(1)
·
rabbitmq_web_mqtt
Applying plugin configuration to rabbit@mq…
The following plugins have been enabled:
rabbitmq_web_mqtt
started 1 plugins.
root@mq:/#
2)RabbitMQ管理控制台查看
如果插件启动成功,rabbitmq会打开1883和15675端口:

3)用MQTTX工具测试

4)用eclipse paho客户端测试
添加依赖
org.eclipse.paho org.eclipse.paho.client.mqttv3 1.2.5
收发消息测试
@RestController
public class DemoController {
@GetMapping("/publish")
public String publish() throws MqttException {
MqttClientPersistence persistence = new MemoryPersistence();;//内存持久化
MqttClient client = new MqttClient("tcp://192.168.137.138:1883", "abc", persistence);
//连接选项中定义用户名密码和其它配置
MqttConnectOptions options = new MqttConnectOptions();
options.setCleanSession(true);//参数为true表示清除缓存,也就是非持久化订阅者,这个时候只要参数设为true,一定是非持久化订阅者。而参数设为false时,表示服务器保留客户端的连接记录
options.setAutomaticReconnect(true);//是否自动重连
options.setConnectionTimeout(30);//连接超时时间 秒
options.setKeepAliveInterval(10);//连接保持检查周期 秒
options.setMqttVersion(MqttConnectOptions.MQTT\_VERSION\_3\_1\_1); //版本
options.setUserName("xjs1919");
options.setPassword("123321".toCharArray());
// client.setManualAcks(true);
client.connect(options);//连接
//订阅topic
client.subscribe("demoTopic", 2);
// 设置回调,将来收到消息的时候会被回调
client.setCallback(new MqttCallbackExtended() {
@Override
public void connectComplete(boolean reconnect, String serverURI) {
System.out.println("连接完成");
}
@Override
public void connectionLost(Throwable cause) {
System.out.println("连接丢失");
}
@Override
public void messageArrived(String topic, MqttMessage message) throws Exception {
System.out.println("收到消息,topic:"+topic + ", msg:" + new String(message.getPayload()));
//client.messageArrivedComplete(message.getId(),message.getQos());
}
@Override
public void deliveryComplete(IMqttDeliveryToken token) {
// Qos0: 当消息发送出去就回调
// Qos1: 当发送者收到了puback的时候的回调
// Qos2: 当发送者收到了pubcomp的时候的回调
System.out.println("消息发送完成");
}
});
client.publish("demoTopic", "hello,这是一个测试消息!".getBytes(), 2, false);
return "ok";
}
}
**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**
**深知大多数大数据工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**
**因此收集整理了一份《2024年大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。**





**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上大数据开发知识点,真正体系化!**
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注大数据获取)**

实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注大数据获取)**
[外链图片转存中...(img-X9tnaiuN-1712858690894)]
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)