как создать несколько (20-30) очередей rabbitMQ, используя l oop при весенней загрузке - PullRequest

Ответы [ 2 ]

0 голосов
/ 29 января 2020

@ Гари Рассел Спасибо, это сработало. другой пример.

public DirectExchange exchange(RabbitAdmin rabbitAdmin) {
    DirectExchange directExchange = new DirectExchange("exchangeName", true, false);
    rabbitAdmin.declareExchange(directExchange);
    for (int num = 1; num <= 20; num++) {
        Queue queue = new Queue("queueName" + num, true, false, false, null);
        rabbitAdmin.declareQueue(queue);
        rabbitAdmin.declareBinding(BindingBuilder.bind(queue).to(directExchange).with("routingKey" + num));
    }

    return directExchange;
}
0 голосов
/ 16 января 2020

Используйте RabbitAdmin.declareQueue() в al oop.

    List<Queue> queues = new ArrayList<>();

    @Bean
    public ApplicationRunner runner(RabbitAdmin admin) {
        return args -> this.queues.forEach(queue -> admin.declareQueue(queue)); 
    }
...