在介绍和使用前,读者可以访问我们 项目地址 或 官方网站,了解并获取到最新的版本信息,MQTT X 正在快速开发迭代阶段,使用最新版本有助于提高使用体验。

下载

请从 GitHub Releases 下载符合您的版本并安装使用。

如果出现网络原因,导致从 GitHub 下载中出现网速较慢或卡顿的情况时,也可以 前往 EMQ 官网 ,选择符合您的版本并安装使用。

MQTT Broker 准备

如果您没有本地部署的 MQTT Broker,那么可以使用由 EMQ X Cloud 提供的公共 MQTT 服务进行快速测试:

Broker 地址: broker.emqx.io

Broker TCP 端口: 1883

Broker SSL 端口: 8883

如果您打算本地部署 MQTT Broker,推荐您 下载 EMQ X 进行安装使用。EMQ X 是一款完全开源,高可用低时延的百万级分布式物联网 MQTT 5.0 消息服务器。

使用 Docker 快速安装 EMQ X:

docker run -d --name emqx -p 1883:1883 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx

连接配置

在准备好 MQTT Broker 后,进入到主程序页面,可点击左侧菜单栏中的 + 号,如果页面没有数据,还可以直接点击右侧的 新建连接 按钮,快速配置一个新的客户端连接。

进入到创建页面后,需配置或填写连接客户端的相关信息,读者可以在此处配置定义 Broker 连接的所有设置,例如:Broker Host, Broker Port, Client ID , Username, Password, Clean Session 等基础配置信息。

Broker 信息

配置 Broker 信息时,Client ID、Host 和 Port 已经默认填写,您也可根据实际的 Broker 信息自行修改。点击 Client ID 右侧的刷新按钮,可快速生成新的 Client ID。

用户认证信息

如果您的 Broker 开启了用户认证,配置项中可填写 Username 和 Password 信息。

SSL/TLS

当需要开启 SSL/TLS 认证时,只需要将配置中的 SSL/TLS 配置项设置为 true,并提供了 CA signed self 和 Self signed 两种方式。

如果选择了 Self signed,可进行证书配置,点击最右侧的文件夹按钮,选择您已经生成好的各项证书,单向连接只需要选择您的 CA File 即可,对于双向认证,还需要选择配置 Client Certificate File 和 Client key file。

高级配置

高级配置中,可以配置 Connect Timeout、 KeepAlive、Clean Session、Auto Reconnect、MQTT Version 等信息。

MQTT v5.0

在高级配置中,可以选择 MQTT 的协议版本,支持 MQTT v3.1.1 和 MQTT v5.0 版本,默认为 v3.1.1,如果选择了 v5.0 版本后,还可配置 Session Expiry Interval、Receive Maximum(可选)。

遗嘱消息

在高级配置下方的配置卡片中,可以配置遗嘱消息,Last-Will-QoS 和 Last-Will-Retain 的值默认填充为 0 和 False,输入 Last-Will-Topic 和 Last-Will-Payload 的值便可完成对遗嘱消息的配置。

发布

连接创建成功后,即可进入到连接的主界面,点击顶部连接名称旁的折叠按钮,可以展开并显示该配置的几个基础信息,快速修改该连接的常用配置,修改时需断开连接,重新点击连接后即可生效。在断开连接的状态下,也可点击右边配置按钮,进行更多的连接配置修改。

连接建立后,可以在连接主页面的下方的输入框内,简单输入 Topic 和 Payload 后,点击右下角按钮,发送测试消息了。macOS 用户可以使用 command + enter 快捷键,其它用户可以使用 control + enter 快捷键来快速发送消息。

订阅

点击左下角的 New Subscription 按钮,可以快速订阅一个 Topic,Topic 订阅成功后将立即开始接受消息。

每个 Topic 都会随机分配一个色彩标记,你也可以打开颜色选择器自定义标记的颜色。点击页面订阅列表顶部的最右侧的按钮,可以隐藏订阅列表以显示更多的空间。

鼠标悬浮到 Topic 列表的卡片上时,点击右上角红色按钮,可以快速取消订阅。

我们再新建一个测试连接用于消息发布测试。在页面右下角填入刚才所订阅的 Topic 信息,输入 Payload 的内容后,点击最右侧的发送按钮,就向订阅了该 Topic 的连接客户端发送了一条消息。

如果发送消息的连接客户端也订阅了相同的 topic ,发送成功后该客户端也将即时接收到刚才所发送的消息。注意,在消息框内,右边栏为发送的消息。左边栏为接收到的消息。

其它

设置

点击左侧菜单栏底部的设置按钮,或使用快捷键,macOS 用户可以使用 command + , 快捷键,其它用户可以使用 control + , 快捷键来跳转到设置页面。目前支持设置语言,是否自动检查更新和选择主题。

消息页面的下拉菜单

在消息栏右上角的 All,Received, Published 按钮可以过滤出 全部消息,已接收的消息,和已发布的消息。

点击顶部的操作栏按钮,选择 Search by Topic 项,或使用快捷键,macOS 用户可以使用 command + f 快捷键,其它用户可以使用 control + f 快捷键,打开按 Topic 搜索过滤消息的的功能。

选择 Clear Histroy 项,可以快速清空当前连接中所有发送和接收的消息。

选择 Disconnect 和 Delete Connection 项,可以快速断开连接,删除当前连接。

检查更新

点击左侧底部的 i 按钮,可进入到 About 页面,了解 MQTT X 的版本信息和 EMQ X 的相关信息。点击 Check for Updates 可以检查是否有更新版本。

以上为 MQTT X 使用方法的简单概述。读者可以通过在 GitHub 上的 使用手册 来完整的使用 MQTT X。

本项目基于 Apache 2.0 开源协议,使用过程中,有任何问题都可以到 GitHub issues 来发表问题,讨论观点或是向我们提交 PR,我们会认真查阅并回复所有问题。

mqtt java教程_MQTT X 使用指南相关推荐

  1. java使用d3_[Java教程]一个初学者的指南,使用D3做数据绑定

    [Java教程]一个初学者的指南,使用D3做数据绑定 0 2016-07-03 13:00:09 一个初学者的指南,使用D3做数据绑定 D3.js 是个强大的数据可视化库,可以做出惊艳的图表.比如:气 ...

  2. java chrome 控制台_[Java教程]Chrome 控制台指南

    [Java教程]Chrome 控制台指南 0 2014-09-16 20:01:07 转自:http://blog.jobbole.com/76985/ Chrome的开发者工具已经强大到没朋友的地步 ...

  3. Selenium Java教程– Selenium中的类名定位器

    Selenium中CSS Locator是编写脚本的最重要方面之一. 如果您无法通过使用Selenium中的任何CSS定位器来定位元素,那么精通Selenium自动化将是一项艰巨的任务. 硒提供多种定 ...

  4. Java High CPU故障排除指南–第1部分

    本文是该系列的第1部分,它将为您提供有关如何进行故障排除和识别Java高CPU问题根本原因的综合指南. 该指南也适用于独立的Java程序,但旨在帮助涉及Java EE企业日常生产支持的个人. 它还将包 ...

  5. HowToDoInJava Java 教程·翻译完成

    原文:HowToDoInJava 协议:CC BY-NC-SA 4.0 欢迎任何人参与和完善:一个人可以走的很快,但是一群人却可以走的更远. ApacheCN 学习资源 目录 核心 Java 教程 什 ...

  6. ZetCode Java 教程

    来源:ApacheCN ZetCode 翻译项目 译者:飞龙 协议:CC BY-NC-SA 4.0 贡献指南 本项目需要校对,欢迎大家提交 Pull Request. 请您勇敢地去翻译和改进翻译.虽然 ...

  7. BeginnersBook Java 教程

    来源:ApacheCN BeginnerBook 翻译项目 译者:飞龙 协议:CC BY-NC-SA 4.0 贡献指南 本项目需要校对,欢迎大家提交 Pull Request. 请您勇敢地去翻译和改进 ...

  8. 我把Github上最牛b的Java教程和实战项目整合成了一个PDF文档

    写在前面 大家都知道 Github 是一个程序员福地,这里有各种厉害的开源框架.软件或者教程.这些东西对于我们学习和进步有着莫大的进步,所以我有了这个将 Github 上非常棒的 Java 开源项目整 ...

  9. Java™ 教程(目录)

    Java™ 教程 Java教程是为JDK 8编写的,本页面中描述的示例和实践没有利用在后续版本中引入的改进. Java教程是希望使用Java编程语言创建应用程序的程序员的实用指南,其中包括数百个完整的 ...

  10. android java教程_[Java教程]Android开发快速入门

    [Java教程]Android开发快速入门 0 2020-12-22 18:01:40 Xamarin.Android 应用程序剖析 以下屏幕截图列出了解决方案的内容. 下面是一个解决方案资源管理器, ...

最新文章

  1. 修改tomcat7默认首页,将tomcat7默认目录指向自己的项目目录
  2. MySQL数据表的创建、查看、插入
  3. float数据类型研究,发现其能显示的有效数字极为有限
  4. vim全局搜索并跳转
  5. ALEIDoc EDI(6)--Filter Conversion
  6. 将字符串转换成16进制
  7. 电脑卡顿不流畅怎么解决_电脑用久了卡怎么办?学会这四招解决你的电脑卡顿问题...
  8. 目录服务用户OSX: ARD的基于目录服务用户权限
  9. SQL SERVER备份脚本
  10. 双指针(下标)的应用
  11. python3语法糖_python 连续不等式语法糖实例
  12. SourceAnalysis/Binder源码分析.md
  13. 计算机二级Java上机环境安装与使用
  14. Android pad适配札记
  15. 【笔记】Opencv 绘制朱利亚(Julia)集合图形
  16. ibm入职测试题太难了_IBM面试的IQ测试题
  17. 引用百度地图API完成热力图
  18. 维护异地恋的十大方法
  19. ssh 使用新法:公网(合法 ip)用户访问内网(私有 ip)服务器(http,ftp,sshd,cvs...),
  20. 面向对象三大特性一一多态(polymorphism)

热门文章

  1. java.sql.SQLSyntaxErrorException: Unknown database ‘数据库名‘
  2. 三创赛优秀作品_厉害了!珠海这所学校的大学生夺得“三创赛”全国总决赛一等奖...
  3. 【题解】二进制优化的多重背包问题
  4. 银河帝国----基地与帝国
  5. 儿童学计算机编程好处,孩子学编程的好处是什么
  6. win7计算机u盘不显示盘符,win7系统识别U盘但不显示盘符该如何解决?
  7. 【Winform】 Enum逆向解析
  8. shopNC注册后无法登陆的问题
  9. idea local history说明
  10. 在浏览器中输入URL(如www.baidu.com)到显示页面经历哪些过程,涉及到哪些协议?