emqttd项目经常有开发者问MQTT消息QoS问题。MQTT作为PubSub协议,QoS保证不是端到端的,是客户端与服务器之间的。具体几个级别Qos的消息流程,MQTT v3.1.1协议规范4.3章节有详细介绍。
另外,接收端收到消息的QoS级别,最终取决于发送消息的Qos和订阅Topic的Qos,表格如下:
发布消息的QoS | Topic订阅的QoS | 接收消息的QoS |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
0 | 2 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
1 | 2 | 1 |
2 | 0 | 0 |
2 | 1 | 1 |
2 | 2 | 2 |
emqttd项目经常有开发者问MQTT消息QoS问题。MQTT作为PubSub协议,QoS保证不是端到端的,是客户端与服务器之间的。具体几个级别Qos的消息流程,MQTT v3.1.1协议规范4.3章节有详细介绍。
另外,接收端收到消息的QoS级别,最终取决于发送消息的Qos和订阅Topic的Qos,表格如下:
发布消息的QoS | Topic订阅的QoS | 接收消息的QoS |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
0 | 2 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
1 | 2 | 1 |
2 | 0 | 0 |
2 | 1 | 1 |
2 | 2 | 2 |