在Spring rabbitMQ中启用分片策略

在Spring rabbitMQ中启用分片策略,rabbitmq,spring-rabbit,Rabbitmq,Spring Rabbit,有没有一种方法可以使用Spring AMQP为RabbitMQ交换定义分片策略?我在这方面所做的任何研究都没有给我一个答案 我面临的问题如下: 我在Spring中定义了直接交换,如下所示: rabbit:directexchange id=“pb”name=“test.pb”durable=“true” 然后为相同的分片创建策略: rabbitmqctl set_policy pbmodule shard“^test.pb$”{“每个节点的碎片数”:“3”,“路由密钥”:“账单”} 在此之后,我

有没有一种方法可以使用Spring AMQP为RabbitMQ交换定义分片策略?我在这方面所做的任何研究都没有给我一个答案

我面临的问题如下:

我在Spring中定义了直接交换,如下所示:

rabbit:directexchange id=“pb”name=“test.pb”durable=“true”

然后为相同的分片创建策略:

rabbitmqctl set_policy pbmodule shard“^test.pb$”{“每个节点的碎片数”:“3”,“路由密钥”:“账单”}

在此之后,我将发送以下消息:

this.rabbitmplate.send(“test.pb”,“bill”,message)


我看到的是消息被传递到了所有3个分片队列。不应该只给一个人吗?

不清楚你在问什么;分片是在代理上配置的,客户端对此不在意。@GaryRussell,感谢您的响应。我编辑了我的帖子以添加更多信息。RabbitMQ建议使用x-module-hash交换,但我不确定如何使用Spring RabbitMQ进行配置。使用自定义交换修复了它,如下所示:您可以回答自己的问题并接受它。