У меня есть микросервисная архитектура, и мне нужно добиться того, чтобы 1 производитель публиковал сообщения для нескольких потребителей. Я хотел бы реализовать этот шаблон:
Я использую Spring Rabbit MQ и мой вопрос заключается в том, как я должен создавать обмены topi c и очереди.
Потребитель должен создать очередь и привязать ее к обмену, а производитель должен иметь имя обмена, но когда я делаю конфигурации для потребителей, все должны иметь:
@Bean
public Queue serviceQueue() {
return new Queue(rabbitMqConfig.getQueue());
}
@Bean
public TopicExchange exchange() {
return new TopicExchange()
}
@Bean
public Binding serviceBinding(){
return BindingBuilder.bind(serviceQueue()).(exhange().with(key));
}
Таким образом, в основном каждый потребитель создает собственный обмен для того, чтобы привязать его к очереди.
Как я могу разделить эти конфигурации, если у меня несколько микросервисов и мне нужны очереди и обмены?