我正在 Python 中学习 MQTT 以及 QOS = 1 和 2 的协议。我担心我的 Raspberry Pi 陷入困境,或者服务器上是否存在其他意外问题。我可以看到排队和飞行中的消息有限制,如下所示。
到目前为止,如果这些队列达到它们的任何一个限制,我还无法阅读或理解我最新发布的消息会发生什么。我猜最新的消息会得到最好的处理,当达到限制时,最旧的消息会被删除,但我找不到明确说明的内容。
这真的会发生吗?
“奖励积分:”有没有办法了解哪些消息 ID 仍然保留在队列中?
import paho.mqtt.client as mqtt
client = mqtt.Client("I am your client")
阅读有关 qos 1 和 2 的
help(client.max_queued_messages_set)
收益
设置传出消息队列中的最大消息数。0 表示无限制。
和
help(client.max_inflight_messages_set)
产量
设置 QoS>0 的最大消息数,这些消息可以同时通过其网络流。默认为 20。