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

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【Android动画】之Tween动画 (渐变、缩放、位移、旋转)

    【Android动画】之Tween动画 (渐变、缩放、位移、旋转)

    2021年12月8日
    41
  • FineCMS介绍

    FineCMS介绍

    2021年11月4日
    41
  • Django(30)Django常用的模板标签

    Django(30)Django常用的模板标签常用的模板标签if标签if标签相当于Python中的if语句,有elif和else相对应,但是所有的标签都需要用标签符号({%%})进行包裹。if标签中可以使用==、!=、<、<=、&

    2022年8月7日
    1
  • 免备案使用国内服务器_国外服务器国内域名要不要备案

    免备案使用国内服务器_国外服务器国内域名要不要备案关于免备案这个问题,我首先说明一下,我不是在提倡大家域名不要备案,这只是一项技术并不是用来给大家滥用的,希望大家能够明白!众所周知,要想使用国内服务器或者主机是是必须要通过工信局的ICP备案的,但是也有的伙伴怕麻烦或者通过不了,这里我教下大家这个使用CDN做到免备案,其实要做到绕过国内服务器域名备案的方法目前小编知道的有两种,一种是利用反向代理、一种就是利用CDN,当然了,你有更多方法愿意分享出来的,可以在评论下方提出。今天,我们就着重讲利用CDN绕备案吧首先,我们要准备好工具,网站、服务器、域

    2022年9月10日
    0
  • 总结Redis Cluster原理+基本使用+运维注意事项「建议收藏」

    目录一、RedisCluster数据分布理论选择(一)数据分布关注点(二)三种数据分布方案的对比1.节点取余分区方案2.一致性哈希分区方案3.虚拟槽分区方案(RedisCluster采用此方案)二、RedisCluster节点通信概述(一)Gossip消息(二)消息格式分析(三)消息处理流程(四)节点选择(五)通信流程总述三、搭建集群与简单…

    2022年4月14日
    38
  • 遗传算法的matlab代码_遗传算法实际应用

    遗传算法的matlab代码_遗传算法实际应用目录1、遗传算法流程2、关键参数说明(1)群体规模\(NP\)(2)交叉概率\(P_c\)(3)变异概率\(P_m\)(4)进化代数\(G\)3、MATLAB仿真实例3.1遗传算法求解一元函数的极值3.2遗传算法求解旅行商问题(TSP)4、遗传算法的特点1、遗传算法流程遗传算法的运算流程如下图所示:具体步骤如下:(1)初始化。设置进化代数计数器\(g=0\),设置最大进化代数\(G\),随机生成\(NP\)个个体作为初始群体..

    2022年9月12日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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