[英]How to delete tasks from celery task queue?
任务结束后,如何删除队列中的所有任务?
我想要这样的东西( 在celery / rabbitmq中删除所有待处理的任务 ),但是对于celery 3.0。
谢谢
编辑:
从celery文档中: http : //docs.celeryproject.org/en/latest/faq.html#how-do-i-purge-all-waiting-tasks
我的代码如下:
从芹菜导入current_app作为芹菜
@task
def task_a():
celery.control.purge()
我期望,如果我发布了5个任务,则只有第一个可以运行。 不知何故,我不会那么做。
谢谢
这些任务可能已经被工人预取了。 为了找到答案,请尝试运行比通过预取乘数乘法的活动工作程序更多的任务(请参阅下文),并检查celery.control.purge()
返回的结果是什么。 您可以使用配置参数CELERYD_PREFETCH_MULTIPLIER
和CELERY_ACKS_LATE
控制预取任务的CELERY_ACKS_LATE
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.