首页 > 系统相关 >CentOS7.9安装mqtt消息中间件mosquitto

CentOS7.9安装mqtt消息中间件mosquitto

时间:2022-10-16 10:00:45浏览次数:71  
标签:x86 CentOS7.9 mqtt mosquitto 消息 yum root localhost

MQTT(MQ Telemetry Transport),消息队列遥测传输协议,轻量级的发布/订阅协议, 适用于一些条件比较苛刻的环境,进行低带宽、不可靠或间歇性的通信。目前已经是物联网消息通信事实上的标准协议了。值得一提的是mqtt提供三种不同质量的消息服务。

1).“至多一次”:消息发布完全依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。
2).“至少一次”:确保消息到达,但消息重复可能会发生。
3).“只有一次”:确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。

基于MQTT(但不仅限于)开源消息代理中间件(Brokers/servers),又有测试客户端,看了几个代理中间件,也百度了一下,应用比较多的有ActiveMQ、Apollo、Mosquitto等。先选择一个没那么复杂的Mosquitto来尝尝鲜。Mosquitto是一款实现了消息推送协议 MQTT v3.1 的开源消息代理软件,提供轻量级的,支持可发布/可订阅的的消息推送模式,使设备对设备之间的短消息通信变得简单,比如现在应用广泛的低功耗传感器,手机、嵌入式计算机、微型控制器等移动设备。

安装:(参考官网 ​​http://mosquitto.org/download/​​)

1.安装

(1).添加EPEL软件库
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

查看安装结果

[root@localhost ~]# yum repolist all | grep enabled
base/7/x86_64 CentOS-7 - Base enabled: 10,070
epel/x86_64 Extra Packages for Enterprise Linu enabled: 13,426
extras/7/x86_64 CentOS-7 - Extras enabled: 413
updates/7/x86_64 CentOS-7 - Updates enabled: 1,112
[root@localhost ~]#
(2).安装 mosquitto

查找 mosquitto 软件包

yum list all | grep mosquitto

查看 mosquitto 信息

[root@localhost ~]# yum info mosquitto
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: hkg.mirror.rackspace.com
* extras: mirrors.ustc.edu.cn
* updates: mirrors.aliyun.com
Installed Packages
Name : mosquitto
Arch : x86_64
Version : 1.6.10
Release : 1.el7
Size : 748 k
Repo : installed
From repo : epel
Summary : An Open Source MQTT v3.1/v3.1.1 Broker
URL : http://mosquitto.org/
License : BSD
Description : Mosquitto is an open source message broker that implements the MQ Telemetry
: Transport protocol version 3.1 and 3.1.1 MQTT provides a lightweight method
: of carrying out messaging using a publish/subscribe model. This makes it
: suitable for "machine to machine" messaging such as with low power sensors
: or mobile devices such as phones, embedded computers or micro-controllers
: like the Arduino.

[root@localhost ~]#

安装 mosquitto 软件包

yum install mosquitto

查看安装结果

[root@localhost ~]# yum list installed | grep mosquitto
mosquitto.x86_64 1.6.10-1.el7 @epel
[root@localhost ~]#

2.测试 mosquitto

(1).启动 mosquitto 主程序 会话1
[root@localhost ~]# mosquitto
1597721219: mosquitto version 1.6.10 starting
1597721219: Using default config.
1597721219: Opening ipv4 listen socket on port 1883.
1597721219: Opening ipv6 listen socket on port 1883.
(2).启动订阅 会话2
mosquitto_sub -t rimelink
(3).启动发布 会话3
mosquitto_pub -t rimelink -h localhost -m "hello,zhangsan"
mosquitto_pub -t rimelink -h localhost -m "hi,lisi"
(4).查看结果 会话2

可以看到订阅程序收到的信息

[root@localhost ~]# mosquitto_sub -t rimelink
hello,zhangsan
hi,lisi

标签:x86,CentOS7.9,mqtt,mosquitto,消息,yum,root,localhost
From: https://blog.51cto.com/u_13753753/5760160

相关文章

  • MQTT EMQX中如何监听客户端上下线?并在业务中使用
    MQTTEMQX中如何监听客户端上下线?最近自助洗车项目改用了全新的客户端通讯方案MQTT,发现了一些问题。之前使用Websocket方式,服务端在发送入场开门命令的时候如果trycatc......
  • centos7.9 安装postgres15数据库
    1.安装yum仓库yuminstall-yhttps://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm2.安装环境依赖(1).安装lib......
  • Springboot整合MQTT
    业务场景硬件采集的数据传入EMQX平台(采用MQTT协议),java通过代码连接MQTT服务器,进行采集数据接收、解析、业务处理、存储入库、数据展示。MQTT是基于发布(Publish)/订......
  • PLC采集网关实现三菱 PLC FX3S 接入金鸽MQTT云平台
    COM口采集三菱PLCFX3S的配置工业智能网关一共有四个COM接口,4个COM口的配置内容一样,COM1固定为RS232,COM2、COM3和COM4是RS232/RS485可选串口(默认为RS485)。因三菱PLCFX......
  • 如何在Angular项目中使用MQTT
    前言​​Angular​​是一个基于TypeScript构建的开发平台。它包括一个基于组件的框架,用于构建可伸缩的Web应用;一组完美集成的库,涵盖路由、表单管理、客户端-服务器通信......
  • 发送mqtt QoS 2的消息时,消息会丢失吗?如何保证消息传输不丢失思路
    官网文档解决“丢失消息”这一问题。消息是非持久消息、发送至错误的位置还是从未发送?错误编写的客户机程序可能会丢失消息。开始之前您有多肯定您所发送的消息已丢失......
  • MQTT协议的消息保留标志位:RETAIN
    MQTT协议的消息保留标志位:RETAIN当消费者订阅某个topic后,不管生产者是否正在发布消息,消费者总能消费到该topic最后一条消息特别注意:MQTT服务器只会为每一个Topic保存......
  • MQTT
    MQTT本资料来自互联网总结MQTT中文网MQTT中文手册MQTT介绍MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输协议)MQTT(MessageQueuingTelemetryTrans......
  • v1.8.3 进行中:MQTT X CLI 支持多主题订阅,优化输出显示
    九月,MQTTX团队专注于1.8.3版本的开发。主要对功能使用进行了优化,并修复了使用过程中所出现的各类问题。例如,优化MQTT5.0CleanStart的使用方式,为会话过期间隔添加默......
  • MQTT 消息持久化
    MQTT消息持久化前提条件:服务器(EMQX)&生产者都正常工作--消费者正常或者非正常掉线,一段时间过后,消费者重新上线,如何保证接收掉线时间内的离线消息?一、持久化会话当消......