MQTT X v1.7.0 正式发布:MQTT 5.0 支持最为完整的客户端工具
MQTT X 是由全球领先的物联网数据基础设施软件供应商 EMQ 开源的一款跨平台 MQTT 5.0 桌面测试客户端,支持 macOS、Linux、Windows 系统。
MQTT X 的用户界面借助聊天软件的形式简化了页面的操作逻辑,用户可以快速创建多个同时在线的 MQTT 客户端,方便测试 MQTT/TCP、MQTT/TLS、MQTT/WebSocket 的连接/发布/订阅功能及其他 MQTT 协议特性。
近日,EMQ 正式发布了 MQTT X v1.7.0。
从这一版本起,MQTT X 将进一步支持 MQTT 5.0 的诸多新特性,这也是全球目前为止对 MQTT 5.0 支持最为完整的桌面测试客户端工具。
MQTT X 网站:https://mqttx.app/zh
MQTT X v1.7.0 版本地址:https://github.com/emqx/MQTTX/releases/tag/v1.7.0
Mac 用户可在 App Store 中进行下载:https://apps.apple.com/cn/app/mqttx/id1514074565?mt=12
Linux 用户可在 Snapcraft 中进行下载:https://snapcraft.io/mqttx
更全面的 MQTT 5.0 支持
在 1.7.0 版本中,MQTT X 新增很多关于 MQTT 5.0 的属性配置功能支持,使其成为目前同类工具中支持 MQTT 5.0 最为完整的 MQTT 桌面客户端工具。
要想对 MQTT 5.0 的特性进行使用和测试,需要 MQTT X v1.7.0 与支持 MQTT 5.0 的 MQTT Broker 配合使用。
云原生分布式 MQTT 消息服务器 EMQ X 从 3.0 版本开始支持 MQTT 5.0 协议,是开源社区中第一个支持该协议规范的消息服务器,并且完全兼容 MQTT 3.1 和 3.1.1 协议。使用 MQTT X 连接到 EMQ X,就可以快速使用和测试 MQTT 5.0 的功能特性。
支持 MQTT 5.0 用户属性配置
新版本中我们首先支持了用户属性的配置。
用户属性是 MQTT 5.0 中一个非常实用的特性,它是一种自定义属性,允许用户向 MQTT 消息添加自己的元数据,传输额外的自定义信息以扩充更多应用场景。如果你熟悉 HTTP 协议的话,该功能与 HTTP 的 Header 的概念非常类似。
我们可以在创建客户端连接和发布消息时进行用户属性的配置。
扩展 MQTT 5.0 其他属性配置
除可配置用户属性外,1.7.0 版本还扩展了客户端连接和消息发布时的其他属性配置。
发送消息时,支持配置 Content Type,指定 Payload Format Indicator,用来描述应用消息的内容的格式,并指定消息内容是 UTF-8 编码的字符串。
支持主题别名的属性配置,可以有效节省带宽资源和计算资源。
支持 MQTT 5.0 中的请求响应,提供 Response Topic 和 Correlation Data,用以控制响应消息被路由回请求的发布者。
支持 MQTT 5.0 订阅选项
该版本中我们还对订阅选项进行了支持。支持了对 No Local flag、Retain as Published flag 和 Retain Handling 的设置,测试时,你可以使用这些订阅选项来改变服务端的行为。
在后续版本中我们还将继续支持订阅标识符等 MQTT 5.0 中的新特性。
更顺畅的使用体验
一键多主题订阅
在之前的版本中,我们每次打开订阅主题的弹框只能订阅一个主题,对于想要订阅多个主题的用户来说,每次都需要点击打开和关闭才能订阅多个主题,不是很方便。因此在新版本我们进行了优化,支持一次订阅多个主题,减少用户的重复操作。
禁止消息自动滚动
v1.7.0 设置中新增了对接收和发布消息时消息列表自动滚动的控制。自动滚动功能适用于当消息接收速率较慢时,可以帮助用户查看到最新消息。当接收消息的速率过快时,用户可以点击关闭该功能,以查看一些发送或接收到的旧消息。
注:当关闭自动滚动功能后,可以提升部分发送和接受消息时的性能。
主题跟随操作系统主题变化(仅支持 macOS)
MQTT X 目前支持 Light、Dark 和 Night 三种主题模式,之前需要手动切换,新版本对此进行了优化。当操作系统的系统主题进行变化时,MQTT X 可以自动切换主题。当 macOS 系统主题是 Dark Mode 时,MQTT X 将自动切换到 Night 主题。
国际化扩展
借助来自社区的力量, MQTT X 的国际化扩展更进一步。除支持简体中文、英文、日文和土耳其文外,我们在一位匈牙利贡献者的帮助下,在 1.7.0 版本中实现了匈牙利语支持。
欢迎更多的社区伙伴参与贡献,和我们一起打造更加优秀的 MQTT X。
更精细的产品打磨
修复及优化
除添加上述新特性外,本次更新还修复了很多已知问题,稳定性得到了进一步提升。
- 修复自动重订阅设置的同步问题
- 修复导入 / 导出数据的问题
- 修复无法编辑已经创建的连接的问题
- 修复了 SSL/TLS 连接时,出现证书过期错误的问题
- 修复无法删除历史消息记录的问题
- 修复 Base 64 转化的问题
- 修复无法新建窗口的问题
- 修复连接列表连接时,出现乱序的问题
未来规划
MQTT X 还在持续增强完善中,以期为用户带来更多实用、强大的功能,为物联网平台的测试和开发提供便利。
接下来我们将重点关注以下方面:
- 更完整的 MQTT 5.0 支持
- 插件系统(例如支持 SparkPlug B)
- MQTT Debug 功能
- 脚本功能优化
结语
MQTT X 为连接测试 EMQ X 等 MQTT 消息服务器而生,通过一键式的连接方式和简洁的图形界面帮助使用者进行 MQTT 特性探索和功能组件调试。
除提供基础 MQTT 测试连接功能,全开源和社区驱动等特性还使其集成了更多丰富、强大、符合用户使用习惯的功能特性。结合 MQTT X 与云原生分布式消息中间件 EMQ X,我们相信物联网平台的测试开发工作将变得更加轻松。
MQTT X 项目完全开源,您可以到 GitHub 来提交使用过程中遇到的问题,或是 Fork MQTT X 项目向我们提交修改后的 PR,我们将会及时查阅和处理。
也特此感谢社区中所有用户的贡献和反馈,每一个社区用户的使用与肯定,都是我们产品前进的动力。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
超大超详细图解,让你掌握Spark memeoryStore内存管理的精髓
摘要:memoryStore主要是将没有序列化的java对象数组或者序列化的byteBuffer放到内存中。 本文分享自华为云社区《spark到底是怎么确认内存够不够用的?超大超详细图解!让你掌握Spark memeoryStore内存管理的精髓》,作者: breakDraw 。 首先回顾一下spark中的Block Manager和memory Store是做什么的。它主要是将没有序列化的java对象数组或者序列化的byte Buffer放到内存中。 但是这就涉及到一些内存管理的问题,如果放不下,是不是要放磁盘?什么时候认为放不下?这里会一一解读。 MemoryStore的putIterator 这个方法是把一堆values的数组内容放入内存中(本质上就是放到Map<blockId, blockEntry>中。如果发现内存足够,能够申请,则调用putArray把数据写入内存(就是放到map中), 否则就去调用diskStore的接口写入磁盘中。 这里我先打住,不直接往下讲,而是给自己假设场景,如果是自己在开发计算引擎,写executor里的block缓存,肯定需要思考这个...
- 下一篇
WebRTC M95 更新
WebRTC M95目前已在Chrome测试版中发布,包含4个新特性以及超过6个bug修复、功能增强、稳定性与性能等方面的改进。 欢迎关注网易云信账号,我们将定期翻译 WebRTC 相关内容,帮助开发者获得最新资讯,走在行业前沿。 01.亮点功能 dcSCTP 用于SCTP传输的DcSCTP库的推出开启了这一里程碑。详情见公告。 02.功能及问题修复 可登陆:https://bugs.chromium.org/p/webrtc/issues/list输入问题 ID 即可查询 Bug 详情。 No.1 类型:Feature 问题 ID:1146942 描述:chromium/webrtc使用的pipewire 版本从 0.2 升级到 0.3 组件:Internals>Media>ScreenCapture No.2 类型:Feature 问题 ID:1203442 描述:删除3DES密码套件 组件:Internals>Network>SSL No.3 类型:Bug 问题 ID:1241213 描述:M93之后版本复用收发器来添加最近删除的视频轨道的功能不起作用 组...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Mario游戏-低调大师作品
- 2048小游戏-低调大师作品
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案