emqx数据桥接功能能不能实现缓存历史数据有序,并且有时间间隔发送,而不是一次性发送,桥接断开再次连接实时数据和历史数据互不影响

您好,就是我现在需要这样一个功能,EMQX不是有个数据桥接功能吗,就是桥接之间断开,它会把消息数据缓存起来,现在就是有两个问题,第一个问题,就是两个emqx broker桥接再次连接,它会把之前缓存的历史数据一次性发送给远程的emqx,就是我现在想要的·效果就是,有序的,有时间间隔的,一条一条的发给远程emqx,而不是一次性,不知道这种能不能实现,第二个问题,就是桥接断开,把消息数据缓存起来,当桥接连接,缓存的的历史消息数据就会发送给远程emqx的主题,但是这时候实时数据也要发送给远程emqx的这个主题,所以就会数据出现混乱,所以我想就是能不能创建一个数据桥接,远程emqx那边设置两个主题,比如说topicA,topicB,如果桥接连接正常,,消息就只往topicA转发,如果桥接断开,消息缓存起来,然后当桥接连接正常,就是实时数据还是往topicA发送,但是缓存的历史数据有序间隔的往topicB发送,他们互不影响,请问可以实现这个吗,我的emqx版本是5.0.26

为什么你需要这个功能

  • 有时间间隔的、一条一条地发送是说不要发送太快对吧?
  • 实时消息会跟缓存消息一起发送,造成顺序混乱,是这个意思吗?

消息顺序应该是会保证的。不然就是 emqx 的问题。你把你的 data/configs/*.conf 贴上来看一下桥接的配置。然后你把消息乱序的情况详细描述一下,最好复现一下,截图或者贴附件上来。

  • 如果没有启用进程池,那么不应该会有消息乱序的问题。
  • 如果你启用了进程池,那么同一个 client 发到 emqx 的消息不应该乱序,应该会按照原来的顺序发到 MQTT Bridge(另外一个 MQTT Broker)。
  • 另外缓存消息应该会先于实时消息发送。