python - 如何使用 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()
接收者
即使在这里,也使用了相同的代码。
- 我对发送者和接收者使用相同的 ip 并尝试过。2)我使用本地主机作为发件人并尝试使用IP地址作为收件人。
但是连接没有建立。有没有办法让这成为可能?
我在也安装了rabbitmq服务器的Windows系统中尝试了相同的代码。即使在那里也发生了同样的错误。我什至检查了阻止端口访问的任何防火墙。但这对我没有帮助。我想我只在rabbitmq方面缺少一些配置。
解决方案
推荐阅读
- node.js - 使用nodejs的简单参数化sqlite查询
- swagger - 在远程服务器上托管可重用的组件定义,并在 open api spec 3.0 中将它们用作 $ref
- php - 查询未获取相关表中的所有结果
- objective-c - self->_xxx 和 _xxx 有什么区别?
- oracle - Oracle 11.2 上的 Soap Webservice:“输入文档/URL 不正确”
- python - 如何使用带有特定过滤器的 Python API 获取对讲用户?
- streaming - grpc : CANCELLED: 在收到半关闭之前取消
- validation - 用于列表验证的自定义 ConstraintValidator
- javascript - JS 正则表达式模式不起作用
- amazon-web-services - 无法使用我的家庭网络连接 RDS 堡垒主机的 ec2 实例