RabbitMQ Pika Python Клиент - Raspberry Pi Zero W - PullRequest
0 голосов
/ 23 апреля 2020

На моем компьютере Windows работает сервер RabbitMQ. Он работает, работает и работает нормально.

Я создал 2 Java Приложения - Отправитель. java и Потребитель. java, чтобы протестировать всю мою систему. Оба приложения работают; Я смог опубликовать sh и использовать сообщения в определенной c очереди.

Я планировал добавить еще один узел в моей системе RabbitMQ - Raspberry Pi Zero W. Я следовал всему, что этот учебник предлагает. Когда я запустил «send.py», я получил следующие ошибки:

pi@raspberrypi:~/RabbitMQ $ python send_amqp.py
Traceback (most recent call last):
  File "send_amqp.py", line 6, in <module>
    connection = pika.BlockingConnection(pika.ConnectionParameters(host='192.168.254.100'))
  File "/home/pi/.local/lib/python2.7/site-packages/pika/adapters/blocking_connection.py", line 359, in __init__
    self._impl = self._create_connection(parameters, _impl_class)
  File "/home/pi/.local/lib/python2.7/site-packages/pika/adapters/blocking_connection.py", line 450, in _create_connection
    raise self._reap_last_connection_workflow_error(error)
pika.exceptions.AMQPConnectionError

Ниже приводится содержимое моего сценария отправителя с использованием python.

#!/usr/bin/env python

import pika

node = "192.168.254.101"
user = "jadeuser"
pwd = "jadepass"

#Set the connection parameters to connect to RabbitMQ Server on port 5672
#on the '/' virtual host using the username 'guest' and password 'guest'
credentials = pika.PlainCredentials(user, pwd)
parameters = pika.ConnectionParameters(node,
                                        5672,
                                        '/',
                                        credentials)

#Establish connection given the credentials
connection = pika.BlockingConnection(parameters)
channel = connection.channel()

#Create a queue
channel.queue_declare(queue='hello-world')

#Basic publish to a DEFAULT exchange - empty string
#Default Exchange allows us to specify directly the QUEUE we want to send
#The QUEUE NAME needs to be declared in the "routing_key" parameter
channel.basic_publish( exchange='', routing_key='hello-world', body='Hello, Python AMQP!' )
print("Message published successfully!")

#Close the connection
connection.close()

У меня есть искал любые источники онлайн для возможных решений, но потерпел неудачу. Буду признателен за любую оказанную помощь. Спасибо!

...