0

我花了很多时间试图弄清楚我应该使用 RabbitMQ federation 插件还是 shovel。

基本上我有两个微服务。我希望他们中的一个向另一个发送消息。每个微服务都有不同的rabbitMQ集群,所以我需要使用Federation/shovel。

我读了这篇文章何时使用 RabbitMQ 铲子以及何时使用联邦插件?仍然无法弄清楚/做出决定。

我想满足以下几点:

  1. 松耦合
  2. 微服务彼此不了解——即第一个微服务发出一条消息说“我已经完成了 x”。第二个微服务只是监听那个“事件”并采取相应的行动......
  3. 将来我“可能”想要添加更多的微服务,每个都有自己的 rabbitMQ 集群/vhost。

根据这些信息 - 你推荐什么,铲子还是联邦?

4

1 回答 1

0

为什么不把所有东西都放在一个集群上呢?RabbitMQ 是为处理 10k+ 交换和队列而构建的,实际上除了内存或磁盘空间之外没有上限。为每个微服务设置一个集群的工作量太大,并且会产生不必要的开销。使用 vhost 也不应该用于此目的,而应用于每个业务领域。

我只使用铲子,并使用它们将消息从生产环境传输到测试,因此我可以使用真实数据进行测试。使用脚本设置非常容易。是的,您应该只使用脚本执行此操作。使用 UI 太慢了。

我知道这并不能直接回答你的问题,但我希望它能给你一些思考。

快乐的消息!

于 2021-02-17T09:21:45.767 回答