1、前言
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。
Mosquitto是用C语言实现MQTT协议的Broker。是一款实现了消息推送协议 MQTT v3.1 的开源消息代理软件,提供轻量级的,支持可发布/可订阅的的消息推送模式,使设备对设备之间的短消息通信变得简单,比如现在应用广泛的低功耗传感器,手机、嵌入式计算机、微型控制器等移动设备。
2、mosquitto
2.1 安装
mosquitto下载地址:Download | Eclipse Mosquitto
下载相应的版本,我的系统是windows 64 的
选择安装路径,例如我的是:D:\Program Files\mosquitto
2.2 mosquitto文件说明
1)mosquitto:代理器主程序
2)mosquitto.conf:配置文件
3)mosquitto_passwd:用户密码管理工具
4)mosquitto_pub:用于发布消息的命令行客户端
5)mosquitto_sub:用于订阅消息的命令行客户端
6)mqtt:MQTT的后台进程
7)libmosquitto:客户端编译的库文件
2.3 修改配置文件
配置文件在D:\Program Files\mosquitto目录下,找到mosquitto.conf文件打开
2.2.1. 配置端口,搜索listener:改为 listener 1883
2.2.2.允许匿名登录:allow_anonymous false改为allow_anonymous true
2.2.3. 设置账号密码,搜索password_file:改为 password_file pwfile.example
设置账号密码,保存于pwfile.example文件内(不允许匿名登录才有效)
至此,mqtt broker环境安装与配置完毕!
2.4 启动mosquitto
打开D:\Program Files\mosquitto目录
按住Shift键,在空白处右击,打开命令行窗口
输入 .\mosquitto -c .\mosquitto.conf -v
然后下面的消息表示mosquitto 2.0.18版本运行起来了。
3、mqtt测试
打开mqtt客户端
因为我开始设置的用户名跟密码是user与password,所以这里需要填上
mosquitto_sub 订阅消息
mosquitto_sub -h localhost -t "test"
mosquitto_pub 发布消息
mosquitto_pub -h localhost -t "test" -m "Hello World!"