mqtt使用一

最近做的一个项目用到了mqtt协议,我需要从第三方订阅主题接受消息,还需要自己搭建,mqtt服务器去发布主题。下面就详细介绍一下环境的搭建和使用。

1.mqtt介绍

MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)

实现MQTT协议需要:客户端服务器端

  • MQTT协议中有三种身份:发布者(Publish)代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者
  • MQTT传输的消息分为:主题(Topic)负载(payload)两部分
    • Topic,可以理解为消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload
    • payload,可以理解为消息的内容,是指订阅者具体要使用的内容

具体不多说,详细参考链接https://www.cnblogs.com/jiangzhaowei/p/7794640.html

2.windows搭建mqtt服务器

mqtt服务器有很多种,我们采用apache apollo的mqtt服务器。

(1)http://activemq.apache.org/apollo/download.html下载windows对应版本的压缩包

 

 解压之后我们会有如下文件,这里需要注意了,解压 apache-apollo-1.7.1 所在文件夹名称不能有 中文或者空格,后面会提到出现什么错误。

进入 \apache-apollo-1.7.1\bin 文件夹
打开cmd窗口,到这个目录下面,然后在 cmd 窗口执行 apollo.cmd看看是否成功执行出现如下命令

下面就是创建属于我们自己的broker了,参考官方文档http://activemq.apache.org/apollo/documentation/getting-started.html

在 CMD 命令窗口输入 apollo create brokerName ,brokerName名字随便起。进入创建的broker目录里面有很多配置,

bin:保存与该实例关联的执行脚本。
etc:保存实例配置文件
data:保存用于存储持久消息的数据文件
日志:保存旋转日志文件
tmp:保存在代理运行之间安全删除的临时文件

etc文件夹中apollo.xml是broker的配置信息,参考文档http://activemq.apache.org/apollo/documentation/user-manual.html#Understanding_the__code_apollo_xml__code__File

 启动broker:我们进入创建的broker的bin目录,运行apollo-broker run

输入 http://127.0.0.1:61680/ 或 https://127.0.0.1:61681/
即可进入 Apollo Console 窗口,里面可以查看自己自己broker发布和订阅的消息。默认的登录用户名和密码是 admin 和 password 。进入界面如下

3.下面搭建客户端,推荐谷歌浏览器插件mqttlens,去更多工具->拓展程序->谷歌商店搜索下载即可

打开mqttlens,如下图

 

windows环境安装完毕。

补充:还有一个好用的客户端叫mqtt.fx,大家可以去网上下载

posted @ 2018-09-18 15:18  赢在当下  阅读(634)  评论(0编辑  收藏  举报