|
MQTT X v1.7.0 正式发布:MQTT 5.0 支持最为完整的客户端工具3 Z2 b) s; P, l, u8 |& W# \
3 |$ S9 [2 m6 x
/ _: u8 O8 N3 B2 k) @
. s \/ L; L& u! ^! q6 WMQTT X 是由EMQ 映云科技开源的一款跨平台 MQTT 5.0 桌面测试客户端,支持 macOS、Linux、Windows 系统。6 ?0 f" D, ]4 C
% t; h9 m9 r- d* ZMQTT X 的用户界面借助聊天软件的形式简化了页面的操作逻辑,用户可以快速创建多个同时在线的 MQTT客户端,方便测试 MQTT/TCP、MQTT/TLS、MQTT/WebSocket 的连接/发布/订阅功能及其他 MQTT协议特性。5 s% _8 B) S3 r5 S
! o' M5 }3 X+ L2 S. O近日,EMQ 映云科技正式发布了 MQTT X v1.7.0。( z; g/ F/ e4 f$ W" }: `
& `4 V/ I; B- x. {2 X' {
从这一版本起,MQTT X 将进一步支持 MQTT 5.0 的诸多新特性,使其成为目前为止全球排名领先的对 MQTT 5.0 支持较为完整的桌面测试客户端工具。+ w' t6 X# A& i4 P1 Q
1 j A& k# \( y
" f# Q' C) V- Z
! o8 S* P3 ^$ O4 [# z& }. B8 F2 }
更全面的 MQTT 5.0 支持
* | ~7 X* ~( m( H. V% P在 1.7.0 版本中,MQTT X 新增很多关于 MQTT 5.0 的属性配置功能支持,使其成为目前同类工具中对MQTT 5.0支持较为完整的 MQTT 桌面客户端工具。
4 L/ _4 T4 P( L. G3 B2 j0 ]" z+ U& T4 P8 T$ A! x6 m% s) g7 T+ R
注:如欲对 MQTT 5.0 的特性进行使用和测试,需要 MQTT X v1.7.0 与支持 MQTT 5.0 的 MQTT Broker 配合使用。) z9 J! L4 V( B$ H( c
4 E; {+ _( c% h/ U% R云原生分布式 MQTT 消息服务器 EMQ X 从 3.0 版本开始支持 MQTT 5.0 协议,是开源社区中第一个支持该协议规范的消息服务器,并且完全兼容 MQTT 3.1 和 3.1.1 协议。使用 MQTT X 连接到 EMQ X,就可以快速使用和测试 MQTT 5.0 的功能特性。
6 B% c9 Z# Q2 W7 _9 Y( ?
% f( l8 C" S! [- ]% }1 [, Z支持 MQTT 5.0 用户属性配置$ b" I$ q6 T, e5 `' ]0 s4 o
. E( [. M* h1 I6 o. L! j新版本MQTT X首先支持了用户属性的配置。
: y9 ?# l) e1 o/ }" C. X( v' J" G9 o
用户属性是 MQTT 5.0 中一个非常实用的特性,它是一种自定义属性,允许用户向 MQTT 消息添加自己的元数据,传输额外的自定义信息以扩充更多应用场景。如果您熟悉 HTTP 协议的话,将发现该功能与 HTTP 的 Header 的概念非常类似。! O9 N# L% V0 A2 q4 z# q. r* D A# d
4 ^$ M0 R7 [* z5 Z
我们可以在创建客户端连接和发布消息时进行用户属性的配置。
. {6 X8 P4 x1 [; _
3 q' [' Y4 C2 t0 s扩展 MQTT 5.0 其他属性配置
9 O/ |: x# {5 M# L3 d1 p5 r
7 U) l8 e; P/ `0 u除可配置用户属性外,1.7.0 版本还扩展了客户端连接和消息发布时的其他属性配置。( |9 B+ p e0 G) W/ t, l9 d
0 c6 p" T6 v, k
发送消息时,支持配置 Content Type,指定 Payload Format Indicator,用来描述应用消息的内容的格式,并指定消息内容是 UTF-8 编码的字符串。$ T" e4 h: K8 Z2 f0 Y
5 D' ~! O% `! M! s: |4 j
支持主题别名的属性配置,可以有效节省带宽资源和计算资源。
8 `3 S7 P0 |8 P: N' U. J/ N8 K+ [5 `. B. }
支持 MQTT 5.0 中的请求响应,提供 Response Topic 和 Correlation Data,用以控制响应消息被路由回请求的发布者。9 B% j5 H) e; [$ X0 k/ a
8 n3 W" k" V1 x w8 ]4 W; B7 N7 ~1 Y支持 MQTT 5.0 订阅选项
/ Q3 i7 q( N, T6 [7 K8 `% S" T. s9 o8 S H% J
该版本中我们还对订阅选项进行了支持。支持了对 No Local flag、Retain as Published flag 和 Retain Handling 的设置。测试时,您可以使用这些订阅选项来改变服务端的行为。; a* f# y. [) O( k
6 s+ ~/ B2 C, K. S4 V' b! l
在后续版本中我们还将继续支持订阅标识符等 MQTT 5.0 中的新特性。
- p2 g% O9 L4 v1 V
3 F* D: t; l, Y8 T2 a) y& k/ X更顺畅的使用体验' j) b# L, h( l, N
一键多主题订阅1 {+ b! w6 u# |+ C, w. ]6 P
4 F( ~% g: U% ?( t3 p5 H3 v
在之前的版本中,我们每次打开订阅主题的弹框只能订阅一个主题,对于想要订阅多个主题的用户来说,每次都需要点击打开和关闭才能订阅多个主题,不是很方便。
1 i E0 Y7 g! e* _* l* R& L# W8 D0 k5 O2 j8 O
因此,在新版本我们进行了优化,支持一次订阅多个主题,减少用户重复操作。
4 J1 s( J9 D7 T; a4 V# x" G9 d3 n! k# Z }# `1 s5 B
禁止消息自动滚动
+ S6 N) v# {- M) I& J0 }' k) x; n
v1.7.0 设置中新增了对接收和发布消息时消息列表自动滚动的控制。自动滚动功能适用于当消息接收速率较慢时,可以帮助用户查看到最新消息。当接收消息的速率过快时,用户可以点击关闭该功能,以查看一些发送或接收到的旧消息。- W2 P3 g6 d* M/ M( C
3 q4 q4 F5 b6 t2 z- D
注:当关闭自动滚动功能后,可以提升部分发送和接收消息时的性能
% r: }6 N9 l$ L& U; _$ E) u
; h9 I+ h T- s# } P6 E. Y主题跟随操作系统主题变化(仅支持macOS)9 V6 R/ }) o& a- d6 T! T
9 C5 }+ w+ u5 h4 Z- aMQTT X 目前支持 Light、Dark 和 Night 三种主题模式,之前需要手动切换,新版本对此进行了优化。当操作系统的系统主题进行变化时,MQTT X 可以自动切换主题。当 macOS 系统主题是 Dark Mode 时,MQTT X 将自动切换到 Night 主题。 N- i1 k3 P5 u2 t+ M
9 S5 {% R- e$ r. Z国际化扩展, E# O: `# q( ]$ w5 U
# T# k: F8 e4 h( R* V; s( _+ `借助来自社区的力量, MQTT X 的国际化扩展更进一步。除支持简体中文、英文、日文和土耳其文外,在一位匈牙利籍贡献者的帮助下,我们在 1.7.0 版本中实现了匈牙利语支持。2 O7 _& u& I9 [+ b# @6 A! C6 [3 s
, A* d f/ Q- P" o7 T欢迎更多的社区伙伴参与进来,和我们一起打造更加优秀的 MQTT X。- d. J" t! E- {- S3 o
4 T7 U% ?$ f; g, q# c$ O
更精细的产品打磨
+ n3 t" o: V6 i- r修复及优化
) j3 Z. y' t0 Y4 D3 [/ Z6 O' W
! B: |4 d% b: }% i0 D/ g1 }/ H除添加上述新特性外,本次更新还修复了很多已知问题,稳定性得到了进一步提升。
% H1 o# F2 m5 `7 T- ~8 `9 w u
. |) u* J' T( H( x, o6 O修复自动重订阅设置的同步问题
9 Q5 P* W( R$ w5 V修复导入/导出数据的问题7 u( M* ^0 W" g
修复无法编辑已经创建的连接的问题
$ h) Q3 i% M. t' o+ D% A( j" h修复了 SSL/TLS 连接时,出现证书过期错误的问题) \" m4 z1 b& d, k
修复无法删除历史消息记录的问题
& j7 o0 }! x* q修复 Base 64 转化的问题
O1 T/ g( K8 [* E7 E3 t6 Z修复无法新建窗口的问题, A* j8 T) o6 ]; X N# Q: m8 A! W
修复连接列表连接时,出现乱序的问题
0 t; E, X7 d& ^未来规划9 k/ ?- y* ]" }7 M7 p w9 ]2 j
& n( Q' V# J. \5 K- ]4 \9 |0 i
MQTT X 还在持续增强完善中,以期为用户带来更多实用、强大的功能,为物联网平台的测试和开发提供便利。: s" o+ @$ G9 A/ D
1 K" K) Q, @ K/ t接下来我们将重点关注以下方面:
9 }$ Q% l7 e, k9 t* y! H! {3 b' Y
! O( I; V0 G2 x l, n更完整的 MQTT 5.0 支持
5 _ G7 M w3 O3 [插件系统(例如支持 SparkPlug B)- P9 Y7 Z% w- K) Y4 P8 s
MQTT Debug 功能
. R: _4 f q( j* m: U! g. H! j脚本功能优化) I& j, _, w9 c* E# f8 D, f
结语" y2 e3 W0 w! {7 l8 I8 o$ d9 E
MQTT X 为连接测试 EMQ X 等 MQTT 消息服务器而生,通过一键式的连接方式和简洁的图形界面帮助使用者进行 MQTT 特性探索和功能组件调试。5 U5 F4 K# {) L8 S/ v
7 f) }5 j3 \! r2 e f
除提供基础 MQTT 测试连接功能,全开源和社区驱动等特性还使其集成了更多丰富、强大、符合用户使用习惯的功能特性。结合 MQTT X 与云原生分布式消息中间件 EMQ X,我们相信物联网平台的测试开发工作将变得更加轻松。: U. R* |/ l$ \' J1 `4 C) J
0 C3 ?8 \+ V6 g+ v9 l T
MQTT X 项目完全开源,也特此感谢社区中所有用户的贡献和反馈,每一个社区用户的使用与肯定,都是我们产品前进的动力。0 k$ r! @ s+ Z
, f6 ?8 j' M& m2 F' y4 ]: n3 H, O |
|