У меня есть проект, в котором у нас будут сотни (потенциально тысячи) очередей в кролике, и каждая из этих очередей должна будет потребляться пулом потребителей.
В кролике (с использованием spring-amqp) у вас есть аннотация кроличьего сланца, которая позволяет мне статически назначать очереди, которые будут обрабатывать эти конкретные потребители.
Мой вопрос - с кроликом и пружиной, есть ли для меня чистый способ получить часть очередей (скажем, очереди, которые начинаются с ac), а затем прослушать любые очереди, которые создаются во время работы потребителя.
Пример (в начале):
- муравьиные очереди
- яблочно-очереди
- кошачьи очереди
Пока потребитель работает:
- Добавление очереди на летучую мышь
Вот (очень простой) код, который у меня сейчас есть:
@Component
public class MessageConsumer {
public MessageConsumer() {
// ideally grab a section of queues here, initialize a parameter and give to the rabbitlistener annotation
}
@RabbitListener(queues= {"ant-queue", "apple-queue", "cat-queue"})
public void processQueues(String messageAsJson) {
< how do I update the queues declared in rabbit listener above ? >
}
}
Edit:
Я должен добавить - я просмотрел весеннюю документацию по amqp, которую нашел в Интернете, и я не нашел ничего, кроме того, чтобы статически (либо жестко, либо через свойства) объявлять очереди