rabbitmq使用mqtt协议

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

在网上学习物联网,发现有人可以用 springboot + rabbitmq可以搭建物联网(IOT)平台,rabbitmq 不是消息队列吗,原来rabbitmq有两种协议,消息队列是用的AMQP协议,而用在智能硬件中的是MQTT协议。


一、rabbitmq是什么?

RabbitMQ就是一种消息队列的实现,可以简单理解为生产者/消费者模式,生产商将生产的商品放在商店(消息队列),消费者有需求就来商店买,商店(消息队列)实现两者间的异步和解耦。

RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,RabbitMQ主要是为了实现系统之间的双向解耦而实现的。当生产者大量产生数据时,消费者无法快速消费,那么需要一个中间层。保存这个数据。

AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。

RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端。

这个不具体介绍了网上太多了

二、mqtt协议是什么?

MQTT 全称(Message Queue Telemetry Transport):一种基于发布/订阅(publish/subscribe)模式的轻量级通讯协议,通过订阅相应的主题来获取消息,是物联网(Internet of Thing)中的一个标准传输协议。

该协议将消息的发布者(publisher)与订阅者(subscriber)进行分离,因此可以在不可靠的网络环境中,为远程连接的设备提供可靠的消息服务,使用方式与传统的MQ有点类似。

TCP协议位于传输层,MQTT 协议位于应用层,MQTT 协议构建于TCP/IP协议上,也就是说只要支持TCP/IP协议栈的地方,都可以使用MQTT协议。

MQTT协议为什么用在在物联网(IOT)
在物联网(IOT)环境中,设备会很受制于环境的影响,比如带宽低、网络延迟高、网络通信不稳定等,显然异步消息协议更为适合IOT应用程序。

MQTT协议广泛应用于物联网、移动互联网、智能硬件、车联网、电力能源等领域。

使用的场景:
物联网M2M通信,物联网大数据采集
Android消息推送,WEB消息推送
移动即时消息,例如Facebook Messenger
智能硬件、智能家具、智能电器
车联网通信,电动车站桩采集
智慧城市、远程医疗、远程教育
电力、石油与能源等行业市场

MQTT协议介绍也不讲了,网上也很多

三、配置步骤

1.启用 rabbitmq的mqtt协议

rabbitmq-plugins enable rabbitmq_mqtt

代码如下(示例):

rabbitmq-plugins enable rabbitmq_mqtt

2.mqtt 客户端依赖包

实现客户端消息的推送和订阅
使用的是spring-integration-mqtt、org.eclipse.paho.client.mqttv3
代码如下(示例):

<dependency>
    <groupId>org.springframework.integration</groupId>
    <artifactId>spring-integration-mqtt</artifactId>
</dependency>
<dependency>
    <groupId>org.eclipse.paho</groupId>
       <artifactId>org.eclipse.paho.client.mqttv3</artifactId>
    <version>1.2.0</version>
</dependency>

总结

每天学习点,记录点点滴滴

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Windows系统中启用RabbitMQMQTT,需要遵循以下步骤: 1. 安装RabbitMQ 首先,需要在Windows系统中安装RabbitMQ。可以从RabbitMQ官方网站下载适合Windows系统的安装程序,然后按照提示完成安装。 2. 安装RabbitMQ MQTT插件 RabbitMQ支持通过插件的方式启用MQTT。因此,需要安装RabbitMQMQTT插件。可以通过以下命令在RabbitMQ命令行中安装插件: ``` rabbitmq-plugins enable rabbitmq_mqtt ``` 该命令会将RabbitMQMQTT插件安装到RabbitMQ的插件目录中。 3. 启用MQTT协议 一旦安装了RabbitMQMQTT插件,就可以启用MQTT协议。可以通过以下命令在RabbitMQ命令行中启用MQTT协议: ``` rabbitmqctl set_permissions -p / mqttuser ".*" ".*" ".*" ``` 该命令会在默认虚拟主机中为MQTT用户设置所有权限。可以根据需要更改用户和虚拟主机名称。 4. 配置MQTT客户端 现在,已经成功启用了RabbitMQMQTT协议。可以使用任何支持MQTT协议的客户端连接到RabbitMQ服务器。 在连接到RabbitMQ服务器之前,需要先配置MQTT客户端。可以在客户端中指定RabbitMQ的IP地址和端口号,并使用MQTT连接参数进行连接。 5. 发布和订阅消息 一旦成功连接到RabbitMQ服务器,就可以使用MQTT协议发布和订阅消息。可以通过以下命令在RabbitMQ命令行中查看MQTT消息: ``` rabbitmqctl list_queues name messages consumers ``` 该命令会列出RabbitMQ服务器上的所有队列及其相关信息。 以上就是在Windows系统中启用RabbitMQMQTT协议的步骤。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值