首页 文章

MQTT到 Kafka . 如何避免重复

提问于
浏览
0

我的要求是负载 balancer 在不同VM上运行的2个MQTT节点,然后让消费者在两个节点上使用这些MQTT代理 . 消费者的工作是订阅一个主题,在收到数据后,将其发布到Kafka . 问题我看到,如果由于两个MQTT消费者都订阅了相同的主题,他们将收到相同的消息,并且两者都会将其插入到Kafka中,从而创建重复项 . 反正是为了避免将副本写入 Kafka ?

  • 我曾尝试过Mosquitto和Mosca经纪人,但他们不支持群集 . 因此订阅的客户端如果订阅了与发布消息的节点不同的节点,则不会收到消息 . 两个节点都落后于HAProxy .

  • 我目前正在使用支持群集的emqtt代理,负载均衡问题得到了解决,但似乎它不支持跨群集节点的共享订阅 .

像 Kafka 消费者群体这样的功能是我认为的要求 . 有任何想法吗?

1 回答

  • 1

    你试过HiveMQ吗?
    它提供了所谓的shared subscriptions .

    如果使用共享订阅,则共享相同订阅的所有客户端将以交替方式接收消息 .

相关问题