ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

MQTT服务器搭建--Mosquitto

2021-01-18 17:32:58  阅读:288  来源: 互联网

标签:tar -- stable MQTT mosquitto v1.6 libwebsockets Mosquitto


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

3.Mosquitto安装

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

# yum -y install gcc gcc-c++c-ares-devel libuuid-devel wget cmake 

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

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

进入目录libwebsockets-v1.6-stable

# cdlibwebsockets-v1.6-stable

编译&安装

# mkdir build

# cd build/

# cmake ..

# make && make install

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

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

# vim config.mk

编译&安装

# make && make install

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

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

#groupadd mosquitto

#useradd -g mosquitto mosquitto

4.Mosquitto配置

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

修改mosquitto.conf

5.Mosquitto运行

启动mosquitto

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

6.Mosquitto测试

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

# mosquitto_sub -t mqtt

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

# mosquitto_pub -h localhost -tmqtt -m "hello world"

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

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

标签:tar,--,stable,MQTT,mosquitto,v1.6,libwebsockets,Mosquitto
来源: https://blog.csdn.net/yiyihuazi/article/details/112789257

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有