转载于https://blog.csdn.net/XreqcxoKiss/article/details/100877707
MQTT(消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。它工作在 TCP/IP协议族上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议,为此,它需要一个消息中间件。
MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。
Apollo是ActiveMQ的子工程,是ActiveMQ的下一代消息代理。
Apollo 是一个更快、更可靠、更容易维护的消息代理,它是由最初的ActiveMQ的基础构建的。它使用一个完全不同的线程和消息调度架构来实现这一点。与ActiveMQ一样,apollo 是一个多协议代理,支持STOMP、AMQP、MQTT、Openwire、SSL和WebSockets。
Apache-apollo服务器的搭建
1.首先下载windows对应的apollo版本,百度云文件分享:
链接:https://pan.baidu.com/s/10VEk1M8U6n2OlbwnHoQm1A
提取码:685z
分享版本是apache-apollo-1.7.1-windows-distro.zip版本。Windows版本为win10,JDK版本1.8
2.解压到D:\apache-apollo下
3.以管理员身份运行cmd(Win+R,输入cmd),进入目录D:\apache-apollo\apache-apollo-1.7.1\bin,如下图所示:
4.创建broker,这里是创建在D:\apache-apollo\broker的目录下,执行如下命令:apollo create myapollo D:\apache-apollo\broker
5.broker创建成功的会提示如下信息:
6.创建完broker之后就要运行apollo,进入D:\apache-apollo\broker\bin目录下,执行如下命令:apollo-broker run
7.apollo运行成功的提示,如下所示:
服务端口设置,在上图启动成功的截图里可以看到的服务器端口,在broker\etc\apollo.xml文件中配置,可以根据需要修改。
默认端口:
< connector id=“tcp” bind=“tcp://0.0.0.0:61613” connection_limit=“2000”/>
< connector id=“tls” bind=“tls://0.0.0.0:61614” connection_limit=“2000”/>
< connector id=“ws” bind=“ws://0.0.0.0:61623” connection_limit=“2000”/>
< onnector id=“wss” bind=“wss://0.0.0.0:61624” connection_limit=“2000”/>
用户的配置是在broker\etc中的group.properties和users.properties中配置
在group.properties文件中添加用户
在users.properties文件中添加用户密码
8.打开浏览器,输入网址http://127.0.0.1:61680/,即可看到如下页面,默认账户:admin,密码:password
9.登录成功之后的页面,控制台页面如下:
使用MQTTlens测试
我的配置如下:
apache-apollo文件下有一个使用demo
Destination中如果和MQTTlens使用相同的订阅名,可以同时更新消息