MQTT学习(一)--使用Apache Apollo在Windows环境下搭建MQTT服务器

最近在学习MQTT协议,至于MQTT协议是什么这里不再多讲,因为这篇文章的前提就是假设当你看到这篇文章时至少已经知道什么是MQTT协议了。因为相当一部分第一次接触MQTT协议的开发人员之前可能都是在Windows环境下工作,所以本文主要内容就是介绍使用Apache Apollo在Windows环境下搭建MQTT Server。


下载Apache Apollo

官网下载地址如下:

http://activemq.apache.org/apollo/download.html

根据需要下载Windows版本,本文选用的是最新的1.7.1版本。
MQTT学习(一)--使用Apache Apollo在Windows环境下搭建MQTT服务器_第1张图片
点击下载链接后会进入详细的下载页面,选择合适的网站镜像地址,下载并另存到本地。

安装Apollo

将下载后的安装包解压,解压后的目录包含了5个文件夹。
MQTT学习(一)--使用Apache Apollo在Windows环境下搭建MQTT服务器_第2张图片
其中各文件夹的作用及含意:
bin:主目录,实例运行的目录
docs:帮助文档
etc:相关配置文件
examples:示例
lib:相关类库

注意:解压路径一定不能包含中文字符或空格
注意:Apollo的运行环境需要安装JDK

创建Apollo实例

进入文件夹x:\xxx\apache-apollo-1.7.1\bin(xxx表示自己的路径),在此文件夹中打开CMD命令行窗口。在窗口中输入apollo.cmd并按回车键运行。
MQTT学习(一)--使用Apache Apollo在Windows环境下搭建MQTT服务器_第3张图片
运行成功后可以看到一些提示信息,算是对Apollo命令的使用导航。如果没有出现这些信息或者出现报错信息就有可能是前面提到的运行环境的问题。
仍然是在CMD命令行窗口中,根据上面提示的命令创建一个Apollo实例。
输入命令: apollo create brokername,其中brokername就是实例名称,可以根据个人喜好取名。我这里取名叫messagecenter。按回车键运行命令。
MQTT学习(一)--使用Apache Apollo在Windows环境下搭建MQTT服务器_第4张图片
命令运行成功后再检查apollo的bin文件夹,就会发现下面多了一个messagecenter的文件夹,与前面取的实例名称一致。同时在CMD窗口上也有一些提示信息,大意为可以使用run命令直接运行实例或者使用install命令将实例作为Windows服务安装并使用start命令后台启动服务。

配置实例

打开apache-apollo-1.7.1\bin目录下的messagecenter文件夹即上一步创建的实例目录,这个目录包含了五个文件夹:
MQTT学习(一)--使用Apache Apollo在Windows环境下搭建MQTT服务器_第5张图片
各文件夹的大体用途如下:
bin:实例主目录
data:数据目录
etc:配置文件
log:日志文件
tmp:临时文件

打开etc文件夹对实例进行配置。修改主要的配置文件apollo.xml。


<broker xmlns="http://activemq.apache.org/schema/activemq/apollo">
  <notes>
    The default configuration with tls/ssl enabled.
  notes>
  <log_category console="console" security="security" connection="connection" audit="audit"/>
  <authentication domain="apollo"/>
  
  
  <access_rule allow="admins" action="*"/>
  <access_rule allow="*" action="connect" kind="connector"/>
  
  <virtual_host id="messagecenter">
    
    <host_name>messagecenterhost_name>
    <host_name>localhosthost_name>
    <host_name>127.0.0.1host_name>
    
    
    
    
    <access_rule allow="users" action="connect create destroy send receive consume"/>  
    
    <leveldb_store directory="${apollo.base}/data"/>
  virtual_host>
  
  <web_admin bind="http://127.0.0.1:61680"/>
  <web_admin bind="https://127.0.0.1:61681"/>
  
  <connector id="tcp" bind="tcp://127.0.0.1:61613" connection_limit="2000"/>
  <connector id="tls" bind="tls://127.0.0.1:61614" connection_limit="2000"/>
  <connector id="ws"  bind="ws://127.0.0.1:61623"  connection_limit="2000"/>
  <connector id="wss" bind="wss://127.0.0.1:61624" connection_limit="2000"/>
  <key_storage file="${apollo.base}/etc/keystore" password="password" key_password="password"/>

broker>

其他相关的配置文件有
black-list.txt:黑名单
groups.properties:用户组信息配置
log4j.properties :日志配置
users.properties:用户信息配置

启动实例

上一阶段的配置完成后,在目录apache-apollo-1.7.1\bin\messagecenter\bin下打开CMD命令行窗口,输入命令apollo-broker.cmd run,按下回车键启动实例。在CMD窗口中可以看到启动的输出信息。
MQTT学习(一)--使用Apache Apollo在Windows环境下搭建MQTT服务器_第6张图片

实例启动后,打开浏览器并在地址栏中输入上一步配置的管理端地址http://127.0.0.1:61680,进入登录界面。
MQTT学习(一)--使用Apache Apollo在Windows环境下搭建MQTT服务器_第7张图片

输入之前配置好的用户名及密码,登录进入管理端主页面。管理端页面包含了实例基本信息、连接终端信息、发布/订阅主题信息等内容。具体含义将在下阶段与客户端调试过程中说明。
MQTT学习(一)--使用Apache Apollo在Windows环境下搭建MQTT服务器_第8张图片


以上就是在Windows环境下搭建MQTT Server的过程。每一步都是一个小的收获。

你可能感兴趣的:(MQTT学习实践)