由 Site Kit 添加的 Google 跟踪代码管理器 (noscript) 代码段 结束 Site Kit 添加的 Google 跟踪代码管理器 (noscript) 代码段
TBMQ 1.3.0 发布 TBMQ 1.3.0 发布

TBMQ 1.3.0 版本:WebSocket 客户端、高级 MQTT 5 功能等

我们很高兴推出 TBMQ 1.3.0 版本!此更新通过引入新的 WebSocket 客户端改进了 MQTT over WebSocket 功能。它还扩大了支持的 MQTT 5 功能的范围。以下是此版本中包含的功能和更新的概述。

WebSocket客户端

我们添加了新的 WebSocket 客户端 - 一种可通过浏览器访问的工具,可以极大地简化跨各种场景的 MQTT 客户端的调试和测试。利用 基于 WebSocket 的 MQTT 功能,该工具为一系列功能提供了用户友好的界面。主要特点包括:

  • 多个连接:轻松管理多个 MQTT 客户端连接。
  • 高级连接设置和身份验证:通过一系列复杂的选项自定义您的连接参数,以满足不同的要求。从多个身份验证选项中进行选择,以确保用户友好且安全的连接体验。
  • 订阅管理:快速添加或更改您订阅的主题,允许您指定高级 MQTT 选项。
  • 消息和日志记录:跟踪消息流和连接状态日志,以便有效调试和分析。
  • 消息发布:方便地发布消息,能够自定义各种 MQTT 相关设置以实现定制通信。

MQTT 5:流量控制

此更新包含流量控制功能,这是管理 MQTT 通信中消息流速率的重要增强功能。在客户端或经纪商处理能力或带宽有限的情况下,此功能尤其重要。

运作原理: MQTT 5 中的流量控制是通过一个关键参数实现的:接收最大值。它规定客户端或代理愿意同时处理的 QoS 1 和 QoS 2 消息的最大数量。接收最大值在 CONNECT 和 CONNACK 数据包内交换。根据 MQTT 规范,其默认值为 65,535。

为什么需要它: 流量控制是一种重要机制,原因如下:

  • 防止过载: 如果没有流量控制,客户端或代理就有可能被超出其处理能力的消息压垮。这可能会导致系统滞后,或者在最坏的情况下,导致崩溃或无响应,特别是在较小、功能较弱的设备中。
  • 确保可靠的通信: MQTT 通过控制消息流,确保数据传输保持稳定可靠。
  • 优化资源利用: 流量控制可以有效地利用系统资源。它确保设备不会因不必要的处理任务而陷入困境,这在计算能力有限的系统中尤其重要。

使用案例:它可以是设备受到处理能力限制而无法有效处理发送或接收大量数据的任何场景(例如智能家居系统或交通管理系统)。

MQTT 5:请求-响应模式

MQTT 5 请求-响应模式引入了一种结构化的通信方法,使设备能够以可靠且高效的方式发送请求和接收响应。

运作原理: 在请求-响应模式中,客户端向特定主题发送请求消息,通常指示它想要执行的操作。该请求包括基本参数,例如响应主题和相关数据。接收者(可能是另一个客户端或应用程序)处理请求并发出指向指定响应主题的相应响应消息。该响应提供请求的结果或确认。利用相关数据,原始请求者可以将收到的响应与其相应的请求精确匹配,确保无缝双向通信。

为什么需要它: 请求-响应模式解决了物联网系统中同步通信的需求,其中设备通常需要立即反馈或确认其操作。通过建立结构化的请求-响应流,MQTT 5 确保设备和应用程序之间可靠、及时地交换信息。

使用案例: 考虑一个家庭自动化场景,用户想要远程控制他们的智能灯。用户向 TBMQ 发送请求消息,指定打开灯的操作。代理将请求传输到接收器,接收器执行操作并将响应消息发送回用户,确认灯已成功打开。这种双向通信允许用户和智能家居系统之间的无缝交互,从而增强整体用户体验。

其他显着的增强

除了前面强调的功能外,此版本还包括增强系统可靠性和效率的几个要点。

专门针对非持久订阅者的反压管理得到了显着增强。这一改进使系统能够通过实施速率限制来更有效地处理这些用户的数据流激增。因此,它确保了系统的稳定性,即使在高要求的情况下也能保持一致的性能。

带有原因代码的断开客户端命令的增强标志着显着的改进,提供了对断开连接原因(例如“会话接管”、“管理操作”)的更清晰的了解,并促进更有针对性的故障排除和分析。

此版本带来了内存使用和整体性能的改进。直接内存泄漏问题的重要解决方案可以带来优化的操作环境。这可以减少延迟并提高吞吐量,从而显着提高系统的性能和稳健性。