我正嘗試使用pika連接到我的遠程rabbitmq,但我得到Connectionclosed()錯誤。我已經在來賓用戶的rabbit.config中進行了必要的更改,以允許所有連接以及來自我的Java代碼的相同連接。我甚至嘗試創建一個擁有所有權限並連接它的新用戶,但它仍然不起作用。儘管我的本地主機相同的代碼工作正常。任何人都可以讓我知道我在這裏做錯了什麼?無法使用pika連接到遠程rabbitmq服務器
def queue_message(message, queue):
credentials = pika.PlainCredentials('xxxx', 'xxxx')
parameters = pika.ConnectionParameters('remote-server',
5672,
'/',
credentials)
connection = pika.BlockingConnection(parameters)
channel = connection.channel()
channel.queue_declare(queue='python_update_queue')
channel.basic_publish(exchange='update.fanout',
body=message)
logger.info("Sent message: {} to queue: {}".format(message, queue))
print 'message sent'
connection.close()
下面是錯誤,我得到:
app/project/rabbitmq.py" in queue_message
connection = pika.BlockingConnection(parameters)
env/lib/python2.7/site-packages/pika/adapters/blocking_connection.py" in __init__
self._process_io_for_connection_setup()
env/lib/python2.7/site-packages/pika/adapters/blocking_connection.py" in ss_io_for_connection_setup
self._open_error_result.is_ready)
env/lib/python2.7/site-packages/pika/adapters/blocking_connection.py" in _flush_output
raise exceptions.ConnectionClosed
你是對這個超時。 pika中的默認超時設置爲0.25秒。增加這個超時之後,一切都一直順利進行。謝謝! – Crane
天哪,我一直在尋找小時,直到我發現這個套接字超時提示。非常感謝,現在終於開始工作了...... – schankam