我的消息被 MQTT 代理降级了,那又怎样



我了解,如果您subscribed具有特定QoStopic,订阅者将仅看到MQTT代理提供的该topic下的消息,其QoS级别等于或低于发布主题时指定的QoS

换句话说,将订阅考试的客户将

订阅topic = newsQoS = 1,然后他将能够在topic = news下看到任何published消息,并带有QoS = 1 OR 0

subscribed QoS = 0 topic = news,这个topic是用QoS = 2发布的,当我连接到broker时,我收到了发布的消息,但带有它的QoS = 0,第二次,我发布了相同的主题,但QoS = 1,当我用QoS = 0订阅它时, 我收到了消息,但QoS = 0.

因此,由于无论QoS级别如何,我都会收到消息,但是,由于QoS"降级",那么风险是什么?任何人都可以解释一下?!!

当您进行订阅时,您是在向代理说"我希望接收消息的最大 QoS 是 X"。这意味着,如果一条消息以更高的 QoS 传入您订阅的主题,它将为您降级。其他客户端不受影响。希望下表能为您澄清这一点。

Subscription QoS | Message QoS | Delivered 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

相关内容

最新更新