如何为Django应用程序的定期任务创建新的芹菜队列?

时间:2019-05-15 22:10:08

标签: python celery django-celery

我需要创建一个定期任务,该任务每五分钟运行一次,以检查azure服务总线上是否有新消息。每次运行时,无论是否有新消息等待,我都希望工作进程保持活动状态五分钟。我还需要为这些任务指定一个新队列。

在安装了celery的django项目中,该在哪里配置这个新队列以及上面提到的配置?

我创建了一个新的python文件,其中包含一个从PeriodicTask继承的类,并传递参数run_every = 300以每5分钟运行一次任务。我想将其分配给azure_queue,但不知道在哪里配置

def CheckForProfileUpdates(PeriodicTask)
   run_every = 300

   def run(self, queue_name='azure_queue'):
        result = check_service_bus_for_profile_update()
        if update_was_found(result):
            update = json.loads(result.body)
            #do business logic here

我希望这些任务每5分钟执行一次,并且每次工作人员必须在这五分钟内保持活动状态,并处于名为“ azure_queue”的专用队列中。同样,我在哪里使用django和celery指定这些设置?

0 个答案:

没有答案