MQTT

integrated-development

# 一、MQTT

mqtt官网:https://www.emqx.com (opens new window)

MQTT协议中文版:https://mcxiaoke.gitbooks.io/mqtt-cn/content/mqtt/01-Introduction.html (opens new window)

# JAVA集成

  1. pom.xml加入依赖
		<!--mqtt-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-integration</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.integration</groupId>
            <artifactId>spring-integration-stream</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.integration</groupId>
            <artifactId>spring-integration-mqtt</artifactId>
        </dependency>
1
2
3
4
5
6
7
8
9
10
11
12
13
  1. 在yml中加入配置
spring:
  # mqtt
  mqtt:
    username: DTU017 # 用户名
    password: 123456 # 密码
    hostUrl: tcp://broker.emqx.io:1883 # tcp://ip:端口
    clientId: mqttx_cfad8857 # 客户端id
    defaultTopic: dp,gj # 订阅主题
    timeout: 100 # 超时时间 (单位:秒)
    keepalive: 60 # 心跳 (单位:秒)
    enabled: true # 是否使能mqtt功能
1
2
3
4
5
6
7
8
9
10
11

# 客户端测试

官方开源测试客户端工具下载:https://www.emqx.com/zh/downloads-and-install?product=MQTTX&version=1.9.3&os=Windows&oslabel=Windows (opens new window)

客户端使用

  1. 创建连接
    • 输出名称;
    • 客户端ID,由客户端自己生成;
    • 服务器地址、端口:使用官方测试服务器地址信息;
  2. 输入Topic
  3. 选择QoS;
  4. 发送报文信息;

# 二、Apache Apollo

ApacheApollo是一个代理服务器,其是在ActiveMQ基础上发展而来的,可以支持多种协议,如:STOMP、AMQP、MQTT、SSL等。

# ApacheApollo安装

windows下载 apache-Apollo 1.7.1 下载地址: http://archive.apache.org/dist/activemq/activemq-apollo/1.7.1/apache-apollo-1.7.1-windows-distro.zip (opens new window)

全版本下载地址: http://archive.apache.org/dist/activemq/activemq-apollo (opens new window)

创建实例

进入到解压文件的bin目录下面,点击apollo.cmd,会弹出一个命令框;

然后输入创建实例的命令:create 你希望存放的目录/实例名称

.\apollo create myapollo 你的安装目录\broker
1

然后就可以看到创建的实例;打开cmd,进入到broker\bin目录,执行命令启动服务器

.\apollo-broker run
1

登录

在浏览器中输入:

http://127.0.0.1:61680或者https://127.0.0.1:61681

(用户名/密码默认为admin/password

注意

以上步骤创建的实例是依赖于解压的服务器的。不能创建实例后就把解压的文件删除或者放到其他目录,否则启动不了。

创建后的实例文件可以拷贝到其他目录下使用(如果需要将服务安装到系统则不可以)。