如何使用celery和django来运行已经在rabbitmq队列中的任务?

时间:2011-11-22 20:24:35

标签: django rabbitmq celery

此时我已经阅读了大部分的rabbitmq文档和芹菜文档,以及google soo多次。基本上我找不到任何我需要的信息。

我有一个扭曲的网络服务器读取传递给它的消息,并使用鼠标将消息放入队列。这很好。我遇到的问题是我从这里做的事情。会发生的是定期(使用celerybeat)我想要消耗队列中当前的内容。我遇到的一个大问题是我不知道如何将任务传递给rabbitmq,以便芹菜(或celerybeat)可以分配要完成的任务。

提出这个问题的最简单方法是:我可以读取以数据为主体并在django中使用该数据的队列吗?

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

我不确定这是否有任何帮助,但我使用djcelery从django进行任务排队,这队列到兔子mq

一个单独的python manage.py(celeryd | celerybeat)进程根据django中的设置选择排队的任务

https://github.com/ask/django-celery

答案 1 :(得分:0)

我有同样的问题,但让我重申一下以确定:

您是否可以使用Celery来消耗由另一个非Django非Celery进程放入RabbitMQ的消息?例如,如果Java系统在购买时向RabbitMQ发送消息,Celery任务是否可以响应该消息并采取某些措施?