Я пытаюсь использовать RabbitMQ с Python на машине Ubuntu 13.RabbitMQ и Python - соединение не может быть установлено
Все, кажется, работает - то есть работает RabbitMQ. У Python есть библиотека (я использую Pika). Выполняется код.
Но после того, как я использую публикацию и пытаюсь закрыть соединение - он не будет закрыт.
После того, как я попробовал py-amqplib, у меня такой же результат. Кажется, что очередь IS создана, но сообщение не отправлено, поэтому публикация не блокируется. Блокирует только connection.close().
Я считаю, что проблема связана с RabbitMQ, а не с библиотеками python.
Мой код:
import pika
JOBS_QUEUE_NAME = "my.queue"
connection = pika.BlockingConnection(pika.ConnectionParameters(
host='localhost'))
channel = connection.channel()
channel.queue_declare(queue=JOBS_QUEUE_NAME)
channel.basic_publish(exchange='',
routing_key=JOBS_QUEUE_NAME,
body='Hello World!')
print "closing"
connection.close()
print "closed"
Любые идеи?
Спасибо!
Ok, некоторые откровение - если я не использую 'connection.close() все работает просто отлично. ЗАЧЕМ?! И если я не закрываю, разве это не испортит RabbitMQ? – Roman
С RabbitMQ (v2.6.1) и pika (v0.9.5) ваш код работает. – mike
Я переключился на Kombu и все отлично работает :) – Roman