Spring RabbitMQ.当多个应用实例连接时,确定所有消费者



我有一个应用程序,它在运行时创建/停止/恢复队列和消费者。这个应用程序有多个实例。我面临的问题是实例只知道它自己创建的消费者。因此,如果有两个队列,每个队列都有一个由不同的应用实例创建的消费者,那么RabbitListenerEndpointRegistry.getQueueNames只返回该实例正在侦听的一个队列

行为例子:

  • create queueA from app instance1
  • 从app instance2创建queueB
  • 从instance1获取当前正在侦听的所有队列-只给出queueA

我需要:从任何应用实例中获取所有侦听器,并从任何应用实例中删除任何队列侦听器。

我和一个连接工厂玩了很多次,运气不好。

这可能吗?

没有可用的AMQP协议或Spring库;RabbitMQ确实提供了一个REST API和一个Java客户端绑定(Hop),这可能会有所帮助,但你需要以某种方式与每个实例通信以关闭侦听器。

相关内容

  • 没有找到相关文章

最新更新