0

我对 RabbitMQ 还很陌生,遇到了一个奇怪的问题,如果我尝试使用 new 远程admin(test)连接,它将连接,但如果通过远程机器运行相同的 prog,它将连接到guest.

ConnectionFactory factory = new ConnectionFactory();
            factory.setHost("192.168.1.6");
            factory.setUsername("test");
            factory.setPassword("test");
           //factory.setPort(5267);
            Connection connection = factory.newConnection();
            Channel channel = connection.createChannel();

在此处输入图像描述 我要从我的队列中获取消息。我的变量已设置。

在此处输入图像描述

我的 conf 文件是

  [
    {rabbit,[{loopback_users,[]}]}
  ].

现在,如果我在远程机器上运行相同的程序,它将显示以访客身份连接 在此处输入图像描述

我的错误是什么?因为远程连接我无法以访客用户身份获取消息表单队列

编辑我的 amqp 监听端口在下面我需要在这里更改什么吗?监听端口

Protocol    Bound to    Port
amqp    0.0.0.0 5672
amqp    ::  5672
4

1 回答 1

2

您的客户端库(可能是 RabbitMQ 提供的客户端?)使用 guest/guest 作为默认用户名和密码。查看 com.rabbitmq.client.ConnectionFactory 的源代码,尤其是 DEFAULT_USER 和 DEFAULT_PASSWORD。如果您不想使用访客/访客,您可能需要更改它以使用新的 ID 和密码。

于 2014-07-18T07:23:12.193 回答