在本文中,我们将聚焦于 MQTT 5.0 的 Payload Format Indicator 和 Content Type 这两个属性,探讨它们如何使我们对消息的解析变得更加透明和高效。
在本文中,我们将聚焦于 MQTT 5.0 的 Payload Format Indicator 和 Content Type 这两个属性,探讨它们如何使我们对消息的解析变得更加透明和高效。
MQTT 5.0 引入了增强认证特性,在原先 CONNECT 和 CONNACK 报文的基础上,又引入了 AUTH 报文来实现任意多次的认证数据交换,以支持各种不同类型的认证机制,例如 SCRAM、Kerberos 认证等等。
在 MQTT 中,客户端和服务端可以在断开网络连接前向对端发送一个 DISCONNECT 报文,来指示连接关闭的原因。客户端发送的 DISCONNECT 报文还可以影响服务端在连接断开后的行为,例如是否发送遗嘱消息,是否更新会话过期间隔。
除了用于连接、发布和订阅的控制报文,MQTT 还有一类报文用于在客户端和服务端之间模拟心跳,以达到保持连接的目的,它们分别是 PINGREQ 报文和 PINGRESP 报文,我们通常也会称它们为心跳报文。
在 MQTT 中,SUBSCRIBE 报文用于发起订阅请求,SUBACK 报文用于返回订阅结果。而 UNSUBSCRIBE 和 UNSUBACK 报文则在取消订阅时使用。
客户端与服务端在消息传递的过程中,除了 PUBLISH 报文,还会用到 PUBACK、PUBREC、PUBREL、PUBCOMP 这四个报文,它们分别用于实现 MQTT 的 QoS 1 和 QoS 2 消息机制。
在本文中,我们将深入研究建立 MQTT 连接需要用到的两个控制报文,分别是 CONNECT 报文与 CONNACK 报文。
消息过期间隔是 MQTT 5.0 引入的一个新特性,它允许发布端为有时效性的消息设置一个过期间隔,如果该消息在服务端中停留超过了这个指定的间隔,那么服务端将不会再将它分发给订阅端。
本文将详细介绍 MQTT 协议和 AMQP 协议,阐明它们的主要区别,以及在选择它们时需要考虑的因素。
MQTT 控制报文是 MQTT 数据传输的最小单元。MQTT 客户端和服务端通过交换控制报文来完成它们的工作,比如订阅主题和发布消息。
深入探索 MQTT 协议中的 Maximum Packet Size,包括如何使用,以及如何有效地在一定范围内调整数据包大小以优化协议流程并保证消息传输的有效性和稳定性。
Reason Code 在 MQTT 中的主要作用是为客户端和服务端提供更详细的反馈。本文将详细介绍 MQTT 5.0 中每个 Reason Code 的含义和使用场景。