美文网首页我爱编程MQTT
MQTT--服务器搭建

MQTT--服务器搭建

作者: biloba | 来源:发表于2017-08-23 23:35 被阅读2673次

    MQTT由IBM的Andy Stanford-Clark博士和Arcom的Arlen Nipper(现为Eurotech)于1999年发明。

    MQTT代表MQ遥测传输。它是针对受限设备和低带宽,高延迟或不可靠网络设计的发布/订阅,非常简单和轻便的消息传递协议。设计原则是尽量减少网络带宽和设备资源需求,同时还要确保可靠性和一定程度的交付保证。这些原则还可以使协议成为连接设备新兴的“机器对机器”(M2M)或“物联网”世界的理想选择,以及带宽和电池电量非常高的移动应用。

    前言

    最近要用arduino开发自主借还书的demo,通过mqtt协议发布数据到服务器,然后用APP订阅相应Topic接收数据,做相应处理。第一步先是搭建mqtt服务器,现在开源mqtt的broker比较多,最后还是选择了Apollo。当然如果不想自己搭建也可以用相应平台,比如阿里云的消息队列中有mqtt,以及物联网平台onenet等等(但是用他们要设置各种key和id,我试了能够连接,但publish始终不行,不知道是哪里设置错了)

    搭建MQTT服务器

    1. 下载apollo
      下载地址http://activemq.apache.org/apollo/download.html
    1. 解压得到下面这些文件

    bin下包含apollo和apollo.cmd两个文件

    1. 打开cmd进入到bin目录下,输入
      apollo.cmd create mybroker
      mybroker是服务器名字任意,服务器实例包含了所有的配置,运行时数据等,并且和一个服务器进程关联。(注意:这里需要java环境,没得要下载jdk,并配置环境变量)

    完成后会多出一个mybroker文件夹


    其中etc中包含相关配置文件,apollo.xml是配置服务器信息的文件,users.properties文件包含连接MQTT服务器时用到的用户名和密码,后面登录网页会介绍,可以修改原始的admin=password,可以接着换行添加新的用户名密码。

    1. 打开mybroker的bin目录,cmd进入到bin目录下,输入
      apollo-broker.cmd run
      开始运行,关闭cmd后会停止。或者可以install并run apollo-broker-service,让它长期在后台运行

    2. 在浏览器中输入http://127.0.0.1:61680/https://127.0.0.1:61681/进入web管理页面,输入默认admin,password

    队列和发布的Topic

    连上的设备

    配置页面


    1. 很多教程说到上面就没了,然后你试着用连接发现根本连不上,其实打开apollo.xml仔细看你会发现少配置了一个选项导致的,可以直接在web页面改

    这两处取消注释就可以连接上了,修改后保存会重新载入配置文件

    1. 其他
      在apollo.xml中

    上面两行是web管理登入链接,下面第一个是tcp方式连接是端口,可以自行更改,比如一般默认1883端口

    相关文章

      网友评论

        本文标题:MQTT--服务器搭建

        本文链接:https://www.haomeiwen.com/subject/tbojdxtx.html