有没有办法在Django Celery中删除定期任务或删除缓存?注释掉代码或删除调度任务的相应代码段不会删除实际任务。
""" Commenting out, or deleting both entries from the code base doesn't do anything
CELERYBEAT_SCHEDULE = {
'add-every-30-seconds': {
'task': 'tasks.add',
'schedule': timedelta(seconds=2),
'args': (2, 2)
},
'add-every-30-seconds2': {
'task': 'tasks.add',
'schedule': timedelta(seconds=5),
'args': (2, 6)
},
}
"""
我尝试了celery -A my_proj purge
,但周期性任务仍然存在。我使用RabbitMQ作为我的经纪人
BROKER_URL = "amqp://guest:guest@localhost:5672//"
CELERY_RESULT_BACKEND='djcelery.backends.database:DatabaseBackend'
CELERYBEAT_SCHEDULER = 'djcelery.schedulers.DatabaseScheduler'
答案 0 :(得分:0)
来自celery guide to periodic tasks和celery management guide。
检查活动:列出活动任务
$ celery -A proj inspect active
检查预定:列出预定的ETA任务
$ celery -A proj inspect scheduled
control disable_events:禁用事件
$ celery -A proj control disable_events
或者,尝试管理指南中提供的GUI管理系统。
编辑:清除只会删除邮件,而不是任务本身。
答案 1 :(得分:0)
删除djcelery管理界面中的任务,将其从数据库中删除。