Saya mencoba mengirim pesan ke antrian kelinci mq di mesin jarak jauh. Saya mengikuti tutorial ini.
Program untuk terhubung ke localhost berfungsi dengan baik. Namun program untuk menyambung ke antrian jarak jauh tidak berfungsi. Kesalahannya pasti terletak saat membuat koneksi, karena saya tidak dapat melihat pesan log 'koneksi dibuat'.
Saya telah memverifikasi bahwa saya dapat mengakses remotehost, port dari mesin saya dan kredensialnya benar. saya dapat mengakses
http://remote-host:15672/#/queues
Apakah saya melewatkan sesuatu yang jelas?
Lokal
#!/usr/bin/env python
import pika
connection = pika.BlockingConnection(pika.ConnectionParameters(host='localhost'))
channel = connection.channel()
channel.queue_declare(queue='hello')
channel.basic_publish(exchange='', routing_key='hello', body='Hello World!')
print " [x] Sent 'Hello World!'"
connection.close()
Jarak jauh
#!/usr/bin/env python
import pika
# this queue is the destination queue
credentials = pika.PlainCredentials('xxxx', 'xxxx')
parameters = pika.ConnectionParameters('remote-host', 15672, '/', credentials)
connection = pika.BlockingConnection(parameters)
print " connection created"
channel = connection.channel()
channel.queue_declare(queue='hello')
channel.basic_publish(exchange='helloEx', routing_key='', body='Hello World!')
print " [x] Sent 'Hello World!'"
connection.close()
Pembaruan Ini adalah kesalahan yang saya dapatkan saat mencoba menyambung.
ERROR:pika.adapters.base_connection:Socket Error on fd 3: 54 Traceback (most recent call last):
File "remote-sender.py", line 10, in connection = pika.BlockingConnection(parameters)
File "/Library/Python/2.7/site-packages/pika/adapters/base_connection.py", line 61, in init
super(BaseConnection, self).init(parameters, on_open_callback)
File "/Library/Python/2.7/site-packages/pika/connection.py", line 513, in init self._connect()
File "/Library/Python/2.7/site-packages/pika/connection.py", line 804, in _connect self._adapter_connect()
File "/Library/Python/2.7/site-packages/pika/adapters/blocking_connection.py", line 146, in _adapter_connect
self.process_data_events()
File "/Library/Python/2.7/site-packages/pika/adapters/blocking_connection.py", line 88, in process_data_events
if self._handle_read():
File "/Library/Python/2.7/site-packages/pika/adapters/blocking_connection.py", line 184, in _handle_read
super(BlockingConnection, self)._handle_read()
File "/Library/Python/2.7/site-packages/pika/adapters/base_connection.py", line 300, in _handle_read
return self._handle_error(error)
File "/Library/Python/2.7/site-packages/pika/adapters/base_connection.py", line 264, in _handle_error
self._handle_disconnect()
File "/Library/Python/2.7/site-packages/pika/adapters/blocking_connection.py", line 181, in _handle_disconnect
self._on_connection_closed(None, True)
File "/Library/Python/2.7/site-packages/pika/adapters/blocking_connection.py", line 235, in _on_connection_closed
raise exceptions.AMQPConnectionError(*self.closing)
pika.exceptions.AMQPConnectionError: (0, '')