MQTT服务器搭建–Mosquitto[通俗易懂]

MQTT服务器搭建–Mosquitto[通俗易懂]MQTT服务器搭建–Mosquitto1.Mosquitto简介MQTT(MQTelemetryTransport),消息队列遥测传输协议,轻量级的发布/订阅协议, 适用于一些条件比较苛刻的环境,进行低带宽、不可靠或间歇性的通信。目前已经是物联网消息通信事实上的标准协议了。值得一提的是mqtt提供三种不同质量的消息服务:l “至多一次”:消息发布完全依赖底层 TCP/IP 网络。

大家好,又见面了,我是你们的朋友全栈君。

MQTT服务器搭建–Mosquitto

1.Mosquitto简介

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

l “至多一次”:消息发布完全依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。

l “至少一次”:确保消息到达,但消息重复可能会发生。

l “只有一次”:确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。

2.Mosquitto下载

下载地址:http://mosquitto.org/download/

需要准备的文件:mosquitto-1.4.11.tar.gz,libwebsockets-v1.6-stable.tar.gz

MQTT服务器搭建--Mosquitto[通俗易懂]

3.Mosquitto安装

将安装包上传到centos操作系统里面,安装依赖包:

# yum -y install gcc gcc-c++c-ares-devel libuuid-devel wget cmake MQTT服务器搭建--Mosquitto[通俗易懂]

MQTT服务器搭建--Mosquitto[通俗易懂]

解压、安装libwebsockets-v1.6-stable.tar.gz

# tar -zxvflibwebsockets-v1.6-stable.tar.gz

MQTT服务器搭建--Mosquitto[通俗易懂]

进入目录libwebsockets-v1.6-stable

# cdlibwebsockets-v1.6-stable

MQTT服务器搭建--Mosquitto[通俗易懂]

编译&安装

# mkdir build

# cd build/

# cmake ..

MQTT服务器搭建--Mosquitto[通俗易懂]

# make && make install

MQTT服务器搭建--Mosquitto[通俗易懂]

解压、安装libwebsockets-v1.6-stable.tar.gz

MQTT服务器搭建--Mosquitto[通俗易懂]

进入mosquitto-1.4.11目录,并修改config.mk支持websocket

MQTT服务器搭建--Mosquitto[通俗易懂]

# vim config.mk

MQTT服务器搭建--Mosquitto[通俗易懂]

编译&安装

# make && make install

MQTT服务器搭建--Mosquitto[通俗易懂]

创建软连接、创建mosquitto用户组

# ln -s /usr/local/lib/libwebsockets.so.6/usr/lib64/libwebsockets.so.6

#groupadd mosquitto

#useradd -g mosquitto mosquitto

MQTT服务器搭建--Mosquitto[通俗易懂]

4.Mosquitto配置

进入目录/etc/mosquitto/将mosquitto.conf.example拷贝一份为mosquitto.conf,将pwfile.example拷贝一份为pwfile

MQTT服务器搭建--Mosquitto[通俗易懂]

修改mosquitto.conf

MQTT服务器搭建--Mosquitto[通俗易懂]

MQTT服务器搭建--Mosquitto[通俗易懂]

MQTT服务器搭建--Mosquitto[通俗易懂]

5.Mosquitto运行

启动mosquitto

# mosquitto -c/etc/mosquitto/mosquitto.conf

MQTT服务器搭建--Mosquitto[通俗易懂]

6.Mosquitto测试

打开一个终端作为订阅端,订阅‘mqtt’主题:

# mosquitto_sub -t mqtt

MQTT服务器搭建--Mosquitto[通俗易懂]

再打开一个终端作为发布端,指定主题‘mqtt‘推送消息

# mosquitto_pub -h localhost -tmqtt -m “hello world”

MQTT服务器搭建--Mosquitto[通俗易懂]

在订阅了’mqtt‘的订阅端会接收到消息

MQTT服务器搭建--Mosquitto[通俗易懂]

7.Mosquitto错误解决

在安装过程中,或测试过程中可能会遇到错误:

mosquitto_sub: errorwhile loading shared libraries: libmosquitto.so.1: cannot open shared objectfile: No such file or directory

解决方法:

# cat/etc/ld.so.conf

# echo”/usr/local/lib”>>/etc/ld.so.conf

# ldconfig

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/138564.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 解决lefse配置过程中遇到的问题「建议收藏」

    解决lefse配置过程中遇到的问题「建议收藏」记录centos7.5中配置lefse过程中遇到的问题1、下载lefse软件包,解压,查看“requirements.txt”文件,需要的R和python包列表:-R-Rlibraries:splines,stats4,survival,mvtnorm,modeltools,coin,MASS-pythonlibraries:rpy2(v.2.1orh…

  • java解析xml格式的节点属性值

    java解析xml格式的节点属性值xml示例:<ResponseContent><Parameter><Document><RecordSetid=”1″><Mastername=”purchase”><Record><Fieldname=”orderNumber”value=”1P05-151200172″/>

  • 域名url转发怎么设置_url和域名

    域名url转发怎么设置_url和域名URL转发技术就是将该域名的网站访问请求,通过浏览器端技术,转向到另外一个网站。域名URL转发分为url显性转发和URL隐性转发这里以万网域名为例教你如何设置显性url转发和隐性URL转发。

    2022年10月18日
  • 解决Ubuntu18.04版本高分辨率下导致字体过小问题

    解决Ubuntu18.04版本高分辨率下导致字体过小问题我所使用的是小米笔记本,显示屏是3.2K的分辨率。由于分辨率太高了,然后在ubuntu18.04的版本下显示的字体很小,小到都看不清了那种。于是查找了调整18.04版本字体大小的方法如下:安装gnome-tweaks工具sudoapt-getinstallgnome-tweaks安装完之后,直接在终端输入gnome-tweaks即可运行该工具。然后调整缩放比例,因为我的电脑分辨率是3.2K,所以我调整的缩放比例是2倍刚刚好,如下图:调整完之后,直接关闭该工具。再次回到ubunt

  • phpstorm激活码2021最新破解方法

    phpstorm激活码2021最新破解方法,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • pycharm2021最新激活码_通用破解码

    pycharm2021最新激活码_通用破解码,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号