0

是否可以使用 RabbitMQ 主题交换来实现以下场景。

假设我有两个队列:

Queue1:路由键 MainRoute.Route1

Queue2:路由键 MainRoute.Route2

当我使用路由键发布消息时:

MainRoute.Route1 -> Queue1

MainRoute.Route2 -> Queue2

MainRoute -> Queue1 和 Queue2

是否有可能在不实施一些特殊的过滤、路由过程的情况下实现这一点?

如果不能,请您就问题的可能解决方案提出建议。

谢谢你。

4

1 回答 1

0

这可以通过直接或主题交换来完成,并且在您的交换中需要 4 个绑定。

假设一个名为“MainEx”的交易所为例,路由键的设置如下:

| 交流| 装订 | 队列 |
| -------- | ---------------- | ------ |
| 主要交易 | MainRoute.Route1 | 队列1 |
| 主要交易 | MainRoute.Route2 | 队列2 |
| 主要交易 | 主干线 | 队列1 |
| 主要交易 | 主干线 | 队列2 |

通过主题交换,您可以使用标志将多条消息发送到单个队列。例如,将“MainRoute.#”绑定到“Queue3”会将所有MainRoute 消息发送到 Queue3。

但是,没有办法用单个绑定来做相反的事情。您需要创建多个绑定来执行您想要的操作。

于 2015-08-24T18:22:49.453 回答