繁体   English   中英

RabbitMq 连接被拒绝:连接

[英]RabbitMq connection refused: connect

我正在处理 rabbitmq 中的连接问题。 我已经在 docker 中加载了它的图像,正如您在此处看到的那样: 在此处输入图像描述

然后在 Spring 我创建了这个配置 class 来创建一个绑定并注册一个队列:

@Configuration
public class MQConfig {

    @Value("${people.queue}")
    public String queue;

    @Value("${people.exchange}")
    public String exchange;

    @Value("${people.routingkey}")
    public List<String> routingKeys;

    @Bean
    public Queue queue() {
        return new Queue(queue, true, false, false);
    }

    @Bean
    Exchange myExchange() {
        return ExchangeBuilder.topicExchange(exchange).durable(true).build();
    }

    @Bean
    Declarables bindings(TopicExchange exchange, Queue queue) {
        return new Declarables(routingKeys.stream()
                .map(key -> BindingBuilder
                        .bind(queue)
                        .to(exchange)
                        .with(key))
                .collect(Collectors.toList()));
    }

    @Bean
    public MessageConverter jsonMessageConverter() {
        return new Jackson2JsonMessageConverter();
    }
    @Bean
    public ConnectionFactory connectionFactory() throws IOException {
        CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
        connectionFactory.setPort(5672);
        connectionFactory.setHost("localhost");
        connectionFactory.setUsername("guest");
        connectionFactory.setPassword("guest");
        connectionFactory.setVirtualHost("/");
        //connectionFactory.setPublisherReturns(true);

        return connectionFactory;
    }
}

运行应用程序后,我在终端中收到以下消息:

2022-08-01 16:35:27.083  INFO 27852 --- [  restartedMain] o.s.a.r.c.CachingConnectionFactory       : Attempting to connect to: [localhost:5672]
2022-08-01 16:35:31.172  INFO 27852 --- [  restartedMain] o.s.a.r.l.SimpleMessageListenerContainer : Broker not available; cannot force queue declarations during start: java.net.ConnectException: Connection refused: connect

我不知道我在哪里无法连接,请帮忙?

谢谢

它连接了。 我所要做的就是在 docker 中运行映像之前配置两个端口。 似乎默认运行它从未启动默认端口,所以一旦我手动设置它们就会运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM