在阅读了Shifu 此前发布的系列MQTT文章后,相信你已经对MQTT的QoS(Quality of Service,服务质量)有了个大概印象——用于指示如何传递消息;共有3个QoS级别和2种类型的消息。
Shifu是由边无际Edgenesis自主研发的物联网开源开发和管理平台,开发者通过Shifu可以轻松实现连接、监控和控制任何物联网设备。
快速回顾
3个QoS级别:
-
0-最多一次
-
1-至少一次
-
2-正好一次
2种交付方式:
-
发布者对中间人
-
中间人对订阅者
此外,在上一篇文章中,我们已经讨论了从订阅者发送至中间人的订阅消息;它定义了用户可以接受的最大QoS级别,任何具有更高级别的消息都将被降低至订阅该级别用户能承受的最大级别。
0-最多一次
我们常能通过事物的名字来判断它是做什么的。因此,如果你的QoS级别为0,则消息要么被传递一次,要么不传递——只尝试一次,并且不重试。发了就算完。哇,非常异步。
1-至少一次
假设我要传递某条信息,则会疯狂地进行重试。发送消息的人将继续重复发送消息,直到它从接收者那里收到PUBACK(由packetId组成,仅