当前位置: 首页 > 知识库问答 >
问题:

当在MQTT中设置QoS级别1时,PUBACK重传的原因是什么?

利思源
2023-03-14

一个学习MQTT的学生。

为了测试MQTT,代理使用mosquitto,发布者和订阅者使用paho库。

从发布者到代理者,我们一直在进行连续发送负载大小为1000字节的消息的实验。

共有1个答案

水品
2023-03-14

代理没有发送重传,承载代理的计算机上的TCP堆栈发送了它,因为它在要求的超时(https://en.wikipedia.org/wiki/transment_control_protocol#timeout_based_retransmission)中没有收到原始文件的TCPsync响应。

如果您检查356的实际内容,它应该与355完全相同

 类似资料:
  • 我在嵌入式应用程序中使用MQTT。我已经详细阅读了文档,了解了QoS特性是如何在MQTT中实现的,以及每个值的含义。 如何克服这个严重的问题?本质上,我不能信任QoS2设置。 (注意,通常这不是问题,因为我可以用QoS 2发布消息。但是,当发布客户端不受您的控制,并且无法保证它们将使用哪种QoS时,这就成了问题。)

  • null 为了更具体地说明我试图实现的目标: 推迟发送,直到成功持久化接收到的消息--有效地扩大QoS级别,直到我的订阅应用程序保证消息得到处理--这是一个好的/有效的想法吗? 以及对于例如持久化错误(数据库超时),是否会发送,这将自动导致重新传递此类消息。 最诚挚的问候

  • 设置超时时间是50毫秒,接口还能正常请求,超时时间不生效 全局设置axios.defaults.timeout = 50 也不生效

  • 问题内容: 我可以看到捕获了一个可以打印的异常,尽管这种异常一直存在。 我是否需要将其设置在某个地方,或者缺少将原因设置为null的东西? 问题答案: 一个例外的属性和。该消息是一种描述,或多或少准确地告诉人类读者出了什么问题。的是不同的东西:它是,如果有的话,另一个(嵌套)。 如果我们使用这样的自定义异常,通常会使用该概念: 编辑-响应@djangofans评论。 标准是嵌套表达式(原因)也将与

  • 我阅读了一些关于的的源代码: 是否自动使用dependency-reduced-pom.xml而不是pom.xml? shade插件生成的dependency-reduced-pom.xml的目的是什么? 将dependency-reduced-pom.xml添加到基目录的Maven shade插件 https://maven.apache.org/plugins/maven-shade-plug