开发者社区> 问答> 正文

发布(Publish QoS1)数据时偶尔会出现MQTT_PUSH_TO_LIST_ERROR(-42),请问如何解决?

设备端SDK使用问题 MQTT连接

展开
收起
iot小能手 2018-11-30 13:54:20 2405 0
1 条回答
写回答
取消 提交回答
  • Subscribe和Unsubscribe时也会出现相同的问题。
    需要等待ACK的packet都会存放起来等待ACK,而存放都是有上限的。当需要等待的packet太多到达上限(V2.03以前是20,V2.03是30),就会触发MQTT_PUSH_TO_LIST_ERROR(-42) error。
    出现error有可能是因为当前网络状态不好,或者是发送的频率过高。如果排除上述两个问题,当前的发送的频率是预期的,那么可以适当的调整IOTX_MC_REPUB_NUM_MAX, IOTX_MC_SUB_REQUEST_NUM_MAX和IOTX_MC_SUB_NUM_MAX的大小。
    针对发布(publish),如果业务允许,也可以把publish的QoS调整成0进行测试验证是否会改善。

    2019-07-17 23:17:29
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
RocketMQ Client-GO 介绍 立即下载
RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载
基于 RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载