摘要:本文基于的插件,针对进行简单的测试。包括协议的介绍,的安装配置开启插件及基于进行的测试。协议是基于发布订阅模型的物联网消息传递协议。对传输消息有三种服务质量最多一次,这一级别会发生消息丢失或重复,消息发布依赖于底层网络。
本文 基于Rabbit MQ的mqtt插件,针对MQTT进行简单的测试。 包括MQTT协议的介绍,rabbitmq的安装、配置、开启mqtt插件及基于MQTTX进行的测试。
随着5G时代的到来,连接一切正在成为现实。大量设备的接入和设备管理给网络宽带、通信协议和平台服务体系结构带来了巨大的挑战。
MQTT协议是基于发布-订阅模型的物联网消息传递协议。由于其实现简单、易于实现、支持QoS和小分组,已占据物联网协议的一半
特点如下:
适用范围:在低带宽、不可靠的网络下提供基于云平台的远程设备的数据传输和监控。
以在centos 7.2中安装为例
在Red Hat 7 或 CentOS 7 上面 基于PackageCloud yum源安装rabbitmq
创建rabbitmq.repo 文件
vi /etc/yum.repos.d/rabbitmq.repo
#### Zero dependency Erlang##[rabbitmq_erlang]name=rabbitmq_erlangbaseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearchrepo_gpgcheck=1gpgcheck=1enabled=1# PackageCloud"s repository key and RabbitMQ package signing keygpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.ascsslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtmetadata_expire=300[rabbitmq_erlang-source]name=rabbitmq_erlang-sourcebaseurl=https://packagecloud.io/rabbitmq/erlang/el/7/SRPMSrepo_gpgcheck=1gpgcheck=0enabled=1gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkeysslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtmetadata_expire=300#### RabbitMQ server##[rabbitmq_server]name=rabbitmq_serverbaseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/$basearchrepo_gpgcheck=1gpgcheck=1enabled=1# PackageCloud"s repository key and RabbitMQ package signing keygpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.ascsslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtmetadata_expire=300[rabbitmq_server-source]name=rabbitmq_server-sourcebaseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/SRPMSrepo_gpgcheck=1gpgcheck=0enabled=1gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkeysslverify=1sslcacert=/etc/pki/tls/certs/ca-bundle.crtmetadata_expire=300
install these dependencies from standard OS repositories
yum install socat logrotate -yyum install erlang -y
yum install rabbitmq-server -y
#配置开机启动chkconfig rabbitmq-server on/sbin/service rabbitmq-server start/sbin/service rabbitmq-server status/sbin/service rabbitmq-server stop
# 开启管理插件rabbitmq-plugins enable rabbitmq_management#开启mqtt插件,也可同时开启 rabbitmq-plugins enable rabbitmq_web_mqttrabbitmq-plugins enable rabbitmq_mqtt# 查看已经安装的插件,输出结果见下图rabbitmq-plugins list# 禁止xxx插件,如rabbitmq_mqttrabbitmq-plugins disable rabbitmq_mqtt# 查看开启的插件,返回[rabbitmq_management,rabbitmq_mqtt].more /etc/rabbitmq/enabled_plugins
用户权限配置请参考access-control
当服务器第一次开始运行,并检测到它的数据库未初始化或已被删除,它将使用以下资源初始化一个新的数据库
默认的Virtual Host and User如下:
为了安全和能远程登录管理页面,需要删除guest用户并创建新用户,用户的标签有5种:administrator ,monitoring,policymaker,management和none ,详见rabbitmq management
#查看用户列表:rabbitmqctl list_users --formatter=json# 删除guest用户rabbitmqctl delete_user guest#增加用户rabbitmqctl add_user "admin" 根据提示输入密码,如输入20212021#增加vhost, 根据需要执行,默认的vhost为/rabbitmqctl add_vhost vnode22# 给用户赋予权限#https://www.rabbitmq.com/access-control.html# First ".*" for configure permission on every entity# Second ".*" for write permission on every entity# Third ".*" for read permission on every entityrabbitmqctl set_permissions -p "/" "admin" ".*" ".*" ".*"# 给用户增加管理员标签rabbitmqctl set_user_tags admin administrator
http://172.25.11.22:15672/#/
输入用户 admin / 20212021 进行登录,首页展示如下:
下载mqttx, 然后直接安装,安装后打开如下:
mqttx下载地址
新增加一个exchange,类型是: topic
可以看到,发送到mq中的消息,订阅者可以立即收到
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/122119.html
摘要:超简单深度睡眠模式下远程采集温湿度信息项目背景相关技术深度睡眠模式温湿度采集数据收发前后端实现后端前端项目背景自己用收纳箱做了一个用于存放打印耗材的干燥箱,想用闲置的开发板和温湿度传感器做一个远程温湿度监测的小项目。 ...
摘要:安装步骤整体软件环境软件版本语言安装离线安装是使用这种编程语言开发的,所以安装的前提是安装语言。这次全都是离线安装,以便在远离的生产环境部署。 安装步骤 整体软件环境 |软件|版本||-|-||RHEL |7 update3||Erlong|19.3||rabbitMQ|3.6.10| Erlong语言安装离线安装 rabbitMQ是使用erlang这种编程语言开发的,所以安装rabb...
摘要:时间就是金钱,效率就是生命本教程助力开发者使用协议快速产品化。摘要借助具备及联网功能的,快速部署到客户产品上,助力开发,缩短开发周期,快速实现产品商业化。 时间就是金钱,效率就是生命 本教程助力开发者使用MQTT协议快速产品化。 摘要 借助具备MQTT及联网功能的DTU,快速部署到客户产品...
登录与添加: 首先,我们打开ONENET云平台 然后选择登录 登录以后我们选择多协议接入中的MQTT 接着我们点击添加产品按钮 输入产品名称丶行业丶类别丶简介 技术参数中联网方式我们可以根据实际情况来选择,设备接入协议选择MQTT协议,操作系统选择uC/OS系统,网络运营商选择移动。接着系统会弹出一个页面我们选择立即添加设备 也可以从设备列表进行添加设备 设备名称可...
摘要:一简介实现方式实现协议需要客户端和服务器端通讯完成,在通讯过程中,协议中有三种身份发布者代理服务器订阅者。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。 ...
阅读 2765·2023-04-25 22:51
阅读 1972·2021-10-11 10:58
阅读 3287·2019-08-30 10:49
阅读 1803·2019-08-29 17:09
阅读 3114·2019-08-29 10:55
阅读 806·2019-08-26 10:34
阅读 3419·2019-08-23 17:54
阅读 963·2019-08-23 16:06