【问题标题】:New Connection not getting created rabbitmq java client未创建新连接 rabbitmq java 客户端
【发布时间】:2017-06-14 19:59:01
【问题描述】:

我刚开始学习rabbitmq。因此,虽然只是在 rabbitmq 中使用 java 客户端做一些基本的事情,但我遇到了以下问题

Exception in thread "main" java.util.concurrent.TimeoutException
    at com.rabbitmq.utility.BlockingCell.get(BlockingCell.java:76)
    at com.rabbitmq.utility.BlockingCell.uninterruptibleGet(BlockingCell.java:110)
    at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:36)
    at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:372)
    at com.rabbitmq.client.impl.AMQConnection.start(AMQConnection.java:298)
    at com.rabbitmq.client.impl.recovery.RecoveryAwareAMQConnectionFactory.newConnection(RecoveryAwareAMQConnectionFactory.java:58)
    at com.rabbitmq.client.impl.recovery.AutorecoveringConnection.init(AutorecoveringConnection.java:103)
    at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:877)
    at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:839)
    at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:797)
    at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:930)
    at com.sharique.jobs.HelloWorldProducer.produce(HelloWorldProducer.java:32)

下面是创建连接的代码

ConnectionFactory factory = new ConnectionFactory();

                factory.setUsername("guest");
                factory.setPassword("guest");
                factory.setHost("localhost");
                factory.setPort(5672);
Connection connection = factory.newConnection();

还有一件事,即 rabbitmq 服务器正在运行。

请帮忙

【问题讨论】:

  • 是否有阻止防火墙? telnet localhost 5672 有什么作用?进去了吗?
  • 不确定我明白了,在客户端代码中,您正在连接到 RabbitMQ 的本地实例。这个主机 0.0.22.40 是什么? telnet localhost 5672 是否连接?
  • 我不知道它到底是什么...而且我还检查了,防火墙已关闭
  • =INFO REPORT==== 29-Jan-2017::21:30:09 === 接受 AMQP 连接 (127.0.0.1:55865 -> 127.0.0.1: 5672)=警告报告==== 2017 年 1 月 29 日::21:30:17 === 关闭 AMQP 连接 (127.0.0.1:55865 -> 127.0.0.1:5672):客户端意外关闭TCP 连接 这是我运行程序时它在 rabbitmq 日志中打印的内容
  • 抱歉...正在尝试 ::1... telnet:连接到地址 ::1:连接被拒绝 尝试 127.0.0.1... 已连接到本地主机。转义字符是 '^]'。外部主机关闭连接。收到此回复

标签: java rabbitmq rabbitmq-exchange rabbitmqctl


【解决方案1】:

cmd

在 cmd 上键入“ netstat /an | find "5672" "。 如果该端口正在侦听,请更改端口或重新启动服务器

【讨论】:

  • find: 5672: No such file or directory 这是我得到的响应,我已经多次重新启动服务器...我 blv 这是默认端口,ryt?
【解决方案2】:

设置虚拟主机setVirtualHost如:

String uri = System.getenv("URL");
if (uri == null) uri = "amqp://guest:guest@localhost";

ConnectionFactory factory = new ConnectionFactory();
factory.setUri(uri);
.
.
factory.setVirtualHost("/");
Connection connection = factory.newConnection();

您也可以设置setConnectionTimeout

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-15
    • 2021-06-28
    • 2014-05-25
    相关资源
    最近更新 更多