EMQX broker给客户端发送订购消息时(Qos 1), 如何能在收到ACK确认后继续保持待发送状态

具体需求是这样的,客户端订购了一个主题(topic/msg),在收到EMQX broker的主题消息后,因为Qos1,会立刻回个ACK消息确认已经收到。但是客户端还需要对收到的消息进行处理,处理后再推送另外一个主题(topic/update),这个(topic/update)中包含了消息处理的结果,如果处理失败,需要EMQX
broker重新发送。

哪位大佬帮忙看看,现有的机制能否实现?

建议,直接基于 MQTT 协议做上层的业务协议开发了。基于 ACK 会和 MQTT 混杂在一起,而且需要定制改 EMQX 才行。

不能。你可以自己实现类似的逻辑。发送端使用 QoS0 发送 topic/msg 消息,并订阅 topic/update 消息。如果超时时间内没有收到 topic/update ,则重发 topic/msg 。