Articles of rabbitmq

RabbitMQ / Celery with Django se cuelga en delay / ready / etc – No hay información de registro útil

Así que acabo de configurar apio y rabbitmq, creé mi usuario, configuré el host virtual, asigné al usuario al host virtual y ejecuté el demonio de apio con éxito (o eso supongo) (queuetest)corky@corky-server:~/projects/queuetest$ ./manage.py celeryd celery@corky-server v0.9.5 is starting. Configuration -> . broker -> amqp://celery@localhost:5672/ . queues -> . celery -> exchange:celery (direct) binding:celery . […]

Notificar a apio tarea de cierre trabajador

Estoy usando apio 2.4.1 con python 2.6, el servidor de rabbitmq y django. Me gustaría que mi tarea fuera capaz de limpiar correctamente si el trabajador se cierra. Por lo que sé, no se puede suministrar un destructor de tareas, así que intenté conectarme a la señal worker_shutdown . Nota: AbortableTask solo funciona con el […]

Establecer tiempo de espera para Pika ioloop async (RabbitMQ)

Necesito poder detener con gracia a un consumidor (trabajador) que trabaja en un ioloop de Pika. El trabajador debe detenerse después de 60 segundos. Los mensajes procesados ​​actualmente deben estar terminados. Intenté poner un connection.close() dentro de la función de callback, pero eso solo detuvo el hilo actual y no el ioloop completo. Y dio […]

El apio se cierra inesperadamente después de una inactividad más prolongada

Así que estoy usando un RabbitMQ + Celery para crear una architecture RPC simple. Tengo un agente de mensajes RabbitMQ y un trabajador remoto que ejecuta Celery Deamon. Hay un tercer servidor que expone una API RESTful delgada. Cuando recibe una solicitud HTTP, envía una tarea al trabajador remoto, espera una respuesta y devuelve una […]

Cómo agregar una clave de encabezado: par de valor al publicar un mensaje con pika

Estoy escribiendo una prueba automatizada para probar un consumidor. Hasta ahora no necesité incluir un encabezado al publicar mensajes, pero ahora sí. Y parece que falta documentación. Este es mi editor: class RMQProducer(object): def __init__(self, host, exchange, routing_key): self.host = host self.exchange = exchange self.routing_key = routing_key def publish_message(self, message): connection = pika.BlockingConnection(pika.ConnectionParameters(self.host)) channel = […]

Django Celery tutorial no devolver resultados

UDATE3: encontré el problema. Vea la respuesta a continuación. ACTUALIZACIÓN2: Parece que podría haber estado lidiando con un problema de nomenclatura automática e importación relativa al ejecutar el tutorial de djcelery a través del shell manage.py, ver más abajo. Todavía no funciona, pero ahora recibo nuevos mensajes de error de registro. Vea abajo. ACTUALIZACIÓN: he […]

En Pika o RabbitMQ, ¿cómo verifico si algún consumidor está consumiendo actualmente?

Me gustaría verificar si un consumidor / trabajador está presente para consumir un mensaje que estoy a punto de enviar. Si no hay ningún Trabajador , comenzaría algunos trabajadores (tanto los consumidores como los editores están en una sola máquina) y luego publicaría los Mensajes . Si hay una función como connection.check_if_has_consumers , la implementaría […]

Ejecuta múltiples tareas de apio usando un intercambio de temas

Estoy reemplazando un código de cosecha propia con Celery, pero me cuesta mucho replicar el comportamiento actual. Mi comportamiento deseado es el siguiente: Al crear un nuevo usuario, se debe publicar un mensaje en el intercambio de tasks con la clave de enrutamiento user.created el user.created . Este mensaje debe activar dos tareas de apio, […]

SparkStreaming, RabbitMQ y MQTT en python usando pika

Solo para complicar las cosas, me gustaría consumir mensajes de la cola de rabbitMQ. Ahora sé que hay un complemento para MQTT en conejo ( https://www.rabbitmq.com/mqtt.html ). Sin embargo, parece que no puedo hacer un trabajo de ejemplo donde Spark consume un mensaje que se ha producido desde pika. Por ejemplo, estoy usando el progtwig […]

Usando RabbitMQ, ¿hay una manera de mirar el contenido de la cola sin una cola de espera?

Como forma de aprender RabbitMQ y python, estoy trabajando en un proyecto que me permite distribuir codificaciones h264 entre varias computadoras. Lo básico está hecho, tengo un demonio que se ejecuta en Linux o Mac que se une a la cola, acepta trabajos y los codifica usando HandBrakeCLI y envía el mensaje una vez que […]