首页 > 解决方案 > 如何使用 IP 地址连接到远程rabbitmq 服务器

问题描述

RabbitMQ 服务器安装在我的 Ubuntu 18 中。我可以发送消息并可以通过本地主机接收

发件人

connection = pika.BlockingConnection(
pika.ConnectionParameters(host='localhost'))
channel = connection.channel()

下面还有一些行来读取输入并调用channel.basic_publish()发送它。

接收者

接收器我也通过本地主机运行

connection = pika.BlockingConnection(
pika.ConnectionParameters(host='localhost'))
channel = connection.channel()

下面还有一些行可以绑定到队列并使用消息。


但是,如果我使用特定的 IP 地址和新创建的 rabbitmq 用户尝试相同的代码,我会收到一些 amqp 连接错误。

File "receiver.py", line 13, in main
    credentials=credentials))
  File "/home/prakash/.local/lib/python3.6/site-packages/pika/adapters/blocking_connection.py", line 360, in __init__
    self._impl = self._create_connection(parameters, _impl_class)
  File "/home/prakash/.local/lib/python3.6/site-packages/pika/adapters/blocking_connection.py", line 451, in _create_connection
    raise self._reap_last_connection_workflow_error(error)
pika.exceptions.AMQPConnectionError

代码:

发件人

credentials = pika.PlainCredentials('testing', 'testing')
connection = pika.BlockingConnection(
pika.ConnectionParameters(host='**.**.**.**', # i gave my system ip
                          port=5672,
                          virtual_host='/', 
                          credentials=credentials))
channel = connection.channel()

接收者

即使在这里,也使用了相同的代码。

  1. 我对发送者和接收者使用相同的 ip 并尝试过。2)我使用本地主机作为发件人并尝试使用IP地址作为收件人。

但是连接没有建立。有没有办法让这成为可能?

我在也安装了rabbitmq服务器的Windows系统中尝试了相同的代码。即使在那里也发生了同样的错误。我什至检查了阻止端口访问的任何防火墙。但这对我没有帮助。我想我只在rabbitmq方面缺少一些配置。

标签: pythonrabbitmqamqp

解决方案


推荐阅读