Apollo-MQTT初级教程

1.基本的安装

Apache Apollo是一个代理服务器,其是在ActiveMQ基础上发展而来的,可以支持STOMP, AMQP, MQTT, Openwire, SSL, and WebSockets 等多种协议。更多介绍请参考Apollo官网。

安装Apollo

下载Apollo

解压

tar -zxvf apache-apollo-1.7.1-unix-distro.tar.gz

创建Broker实例

cd/var/lib${APOLLO_HOME}/bin/apollo create mybroker

一个broker实例的目录结构如下图:

Apollo-MQTT初级教程_第1张图片

bin: 一些可执行脚本

etc: 配置文件

data: 用于存储持久消息的数据文件

log: 日志轮询

日志轮询是linux中对日志文件的一种处理方式,为防止日志文件过大造成一些应用的问题。

日志轮询的原理是:按时间或者按文件大小,将日志文件更名,让应用将新的日志写入新的文件中,旧的日志文件可以设置保留一段时间以备检查。

tmp: 在broker运行之间安全删除的临时文件

执行broker

/var/lib/mybroker/bin/apollo-broker run

broker启动后,你可以执行一个样例来测试broker是否正常工作,具体参见测试broker

WEB管理

Apollo提供一个简单的web界面来监控broker运行状态,通过地址http://127.0.0.1:61680/orhttps://127.0.0.1:61681/来访问。默认登陆id和密码为'admin'和'password'。

Apollo-MQTT初级教程_第2张图片

2.一些坑

apollo-mqtt服务器的有个坑真的很神奇,你在web interface里创建topic,过一会就没了,查了全网竟然一点资料没有,看文档才发现这个,你必须要在配置文件里创建topic而且要指定auto_delete_after参数,不然就是默认30s消失。。。惊不惊喜?

我原来的理解是在服务器端创建一个topic,其实不用,这个topic是你在链接的时候可以主动创建,如果没有设备订阅也没有发布消息,那一会就消失了。这个好像和百度云不一样。

Apollo-MQTT初级教程_第3张图片

3.客户端链接代码


Apollo-MQTT初级教程_第4张图片

你可能感兴趣的:(Apollo-MQTT初级教程)