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 |