【问题标题】:Unable to connect to online activemq无法连接到在线activemq
【发布时间】:2020-05-05 15:07:11
【问题描述】:

我遇到了一个问题,我无法连接到亚马逊 mq 上的在线 activemq 代理。 这是我的代码 +++++++++++++++++++++++++++++++++++++++

import time
import sys
import os
import stomp
from stomp import *
#import pika

user = os.getenv("admin")
password = os.getenv("password")
host = os.getenv("stomp+ssl://online_host:61614")
port = os.getenv("61614")
destination = sys.argv[1:2] or ["/topic/event"]
destination = destination[0]

messages = 1000
data = "Hello World from Python"
conn = stomp.Connection(host_and_ports=[(host, port)])
#conn.set_listener('print', PrintingListener())
#conn.start()
conn.connect(login=user, passcode=password)

for i in range(0, messages):
    conn.send(data, destination=destination, persistent='false')

conn.send("SHUTDOWN", destination=destination, persistent='false')

conn.disconnect(receipt=None)

++++++++++++++++++++++++++++++++++++++++++++++++++ + 你能帮帮我吗?我收到一个错误 ++++++++++++++++++++++++++++++++++++++++ 无法连接到主机无,端口无 回溯(最近一次通话最后): 在尝试连接中的文件“C:\Users\navee\PycharmProjects\apachekafka\venv\lib\site-packages\stomp\transport.py”,第 730 行 self.socket = socket.create_connection(host_and_port, self.__timeout) 文件“C:\Users\navee\AppData\Local\Programs\Python\Python38-32\lib\socket.py”,第 787 行,在 create_connection 对于 getaddrinfo(host, port, 0, SOCK_STREAM) 中的 res: 文件“C:\Users\navee\AppData\Local\Programs\Python\Python38-32\lib\socket.py”,第 914 行,在 getaddrinfo 对于 _socket.getaddrinfo 中的 res(主机、端口、家庭、类型、原型、标志): socket.gaierror:[Errno 11001] getaddrinfo 失败 无法连接到主机无,端口无 回溯(最近一次通话最后): 在尝试连接中的文件“C:\Users\navee\PycharmProjects\apachekafka\venv\lib\site-packages\stomp\transport.py”,第 730 行 self.socket = socket.create_connection(host_and_port, self.__timeout) 文件“C:\Users\navee\AppData\Local\Programs\Python\Python38-32\lib\socket.py”,第 787 行,在 create_connection 对于 getaddrinfo(host, port, 0, SOCK_STREAM) 中的 res: 文件“C:\Users\navee\AppData\Local\Programs\Python\Python38-32\lib\socket.py”,第 914 行,在 getaddrinfo 对于 _socket.getaddrinfo 中的 res(主机、端口、家庭、类型、原型、标志): socket.gaierror:[Errno 11001] getaddrinfo 失败 无法连接到主机无,端口无 回溯(最近一次通话最后): 在尝试连接中的文件“C:\Users\navee\PycharmProjects\apachekafka\venv\lib\site-packages\stomp\transport.py”,第 730 行 self.socket = socket.create_connection(host_and_port, self.__timeout) 文件“C:\Users\navee\AppData\Local\Programs\Python\Python38-32\lib\socket.py”,第 787 行,在 create_connection 对于 getaddrinfo(host, port, 0, SOCK_STREAM) 中的 res: 文件“C:\Users\navee\AppData\Local\Programs\Python\Python38-32\lib\socket.py”,第 914 行,在 getaddrinfo 对于 _socket.getaddrinfo 中的 res(主机、端口、家庭、类型、原型、标志): socket.gaierror:[Errno 11001] getaddrinfo 失败 回溯(最近一次通话最后): 文件“act_prod.py”,第 20 行,在 conn.connect(登录=用户,密码=密码) 文件“C:\Users\navee\PycharmProjects\apachekafka\venv\lib\site-packages\stomp\connect.py”,第 161 行,在连接中 self.transport.start() 文件“C:\Users\navee\PycharmProjects\apachekafka\venv\lib\site-packages\stomp\transport.py”,第 104 行,开始 self.attempt_connection() 文件“C:\Users\navee\PycharmProjects\apachekafka\venv\lib\site-packages\stomp\transport.py”,第 803 行,在尝试连接中 引发异常.ConnectFailedException() stomp.exception.ConnectFailedException

++++++++++++++++++++++++++++++++++++++++++++++++++

【问题讨论】:

    标签: python activemq amazon-mq


    【解决方案1】:

    查看您记录的错误:

    '无法连接到主机无,端口无'

    您的主机和端口环境变量似乎不存在。

    另外,

    通过 ssl 通信时应该调用 conn.set_ssl

    conn.set_ssl(for_hosts=[(host, port)])
    

    并且在连接的时候也设置了wait arg,所以在连接成功之前你不会尝试发送

    conn.connect(login=user, passcode=password, wait=True)
    

    【讨论】:

      【解决方案2】:

      我也有类似的问题。尝试了以下。 Unable to connect to MQ broker using STOMP in python

      虽然对我不起作用..!! 干杯..!

      【讨论】:

      • 不要将解决方案作为链接发布:它们可能会损坏,使您的答案完全无用!在这里总结一下它的主要内容,而不是(用你自己的话,避免抄袭来源)。
      猜你喜欢
      • 2018-08-08
      • 2016-09-05
      • 2017-10-07
      • 2016-04-17
      • 2020-06-16
      • 1970-01-01
      • 2015-01-01
      • 2020-02-24
      • 2013-10-06
      相关资源
      最近更新 更多