tongchenkeji 发表于:2023-7-19 20:13:550次点击 已关注取消关注 关注 私信 mqtt客户端的qos设置为1或者2的时候会导致消息堆积嘛?[阿里云消息队列MQ] 暂停朗读为您朗读 mqtt客户端的qos设置为1或者2的时候会导致消息堆积嘛? 「点点赞赏,手留余香」 赞赏 还没有人赞赏,快来当第一个赞赏的人吧! 海报 消息队列 MQ# 云消息队列 MQ1430# 网络性能优化10
Star时光AM 2023-11-28 0:14:59 1 当 MQTT 客户端的 QoS(服务质量)设置为 1 或 2 时,并不会直接导致消息堆积。QoS 主要影响消息传递的可靠性。 QoS 0:最多一次传递(At most once delivery),消息发送后不保证可靠传递。这种情况下,即使网络中断或客户端离线,消息也不会被重新传递。因此,不会导致消息堆积。 QoS 1:至少一次传递(At least once delivery),确保消息至少被传递一次,但可能会重复传递。当消息发送后,如果没有收到 PUBACK 确认消息,客户端将重新发送消息,直到收到确认。这可能会导致在某些情况下消息重复传递,但不会导致明显的消息堆积。 QoS 2:恰好一次传递(Exactly once delivery),确保消息仅被传递一次。通过对消息进行握手流程和去重机制,确保消息只传递一次。与 QoS 1 相比,QoS 2 的处理更复杂,可能产生更多的网络开销和延迟,但也不会导致明显的消息堆积。=
当 MQTT 客户端的 QoS(服务质量)设置为 1 或 2 时,并不会直接导致消息堆积。QoS 主要影响消息传递的可靠性。
QoS 0:最多一次传递(At most once delivery),消息发送后不保证可靠传递。这种情况下,即使网络中断或客户端离线,消息也不会被重新传递。因此,不会导致消息堆积。
QoS 1:至少一次传递(At least once delivery),确保消息至少被传递一次,但可能会重复传递。当消息发送后,如果没有收到 PUBACK 确认消息,客户端将重新发送消息,直到收到确认。这可能会导致在某些情况下消息重复传递,但不会导致明显的消息堆积。
QoS 2:恰好一次传递(Exactly once delivery),确保消息仅被传递一次。通过对消息进行握手流程和去重机制,确保消息只传递一次。与 QoS 1 相比,QoS 2 的处理更复杂,可能产生更多的网络开销和延迟,但也不会导致明显的消息堆积。
=
看网速、消费速度和生产速度了。此回答整理至钉群“阿里云 微消息队列 MQTT产品咨询群”。