Docker compose Celerybeat仅在使用app.control.purge()时发送任务?
我在docker中使用芹菜、芹菜酱和兔子酱。然而,只有在我首先使用app.control.purge()清空队列时,我的芹菜节拍才会起作用。而且,celerybeat只发送任务一次!如果我想运行任务,我应该再次清除队列中的所有任务。 这是我的任务模板:Docker compose Celerybeat仅在使用app.control.purge()时发送任务?,docker-compose,celery,django-celery,celery-task,celerybeat,Docker Compose,Celery,Django Celery,Celery Task,Celerybeat,我在docker中使用芹菜、芹菜酱和兔子酱。然而,只有在我首先使用app.control.purge()清空队列时,我的芹菜节拍才会起作用。而且,celerybeat只发送任务一次!如果我想运行任务,我应该再次清除队列中的所有任务。 这是我的任务模板: @shared_task def test_task(): print('Hello') 这是我的芹菜配置: from __future__ import absolute_import, unicode_literals from
@shared_task
def test_task():
print('Hello')
这是我的芹菜配置:
from __future__ import absolute_import, unicode_literals
from celery import Celery
import os
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'configuration.settings')
app = Celery('configuration')
app.config_from_object('django.conf:settings', namespace='CELERY')
app.autodiscover_tasks()
@app.on_after_configure.connect
def setup_periodic_tasks(sender, **kwargs):
from applications import test_task
from celery.schedules import crontab
sender.add_periodic_task(crontab(minute='*/1'), test_task(), name='test')
你知道我该怎么做吗?
谢谢使用
timedelta(minutes=1)
而不是crontab(minute=f'*/1')
,这可能不是使用crontab()的正确方法……实际上我使用了'*/1',这是我文章中的一个输入错误。所以,我仍然有问题。所以您没有尝试建议的timedelta()?我也检查了它,但仍然不起作用。