Python 芹菜:开始工作后问

Python 芹菜:开始工作后问,python,scheduled-tasks,celery,worker,periodic-task,Python,Scheduled Tasks,Celery,Worker,Periodic Task,我在做芹菜 我需要在特定时刻运行定期任务。但我只想在开始芹菜工人之后开始我的任务 为此,我正试图创建自己的“周期任务”。但我正在处理一个问题 当我在另一个终端启动worker并执行run_tasks.py时,我的周期性任务似乎只执行一次 我怎样才能让我的定期任务每3秒运行一次呢 这是代码的一部分 开始芹菜: celery worker --app=worker_manager.celery --loglevel=info 文件tasks.py class MyPeriodicTask(Pe

我在做芹菜

我需要在特定时刻运行定期任务。但我只想在开始芹菜工人之后开始我的任务

为此,我正试图创建自己的“周期任务”。但我正在处理一个问题

当我在另一个终端启动worker并执行run_tasks.py时,我的周期性任务似乎只执行一次

我怎样才能让我的定期任务每3秒运行一次呢

这是代码的一部分

开始芹菜:

celery worker --app=worker_manager.celery  --loglevel=info 
文件tasks.py

class MyPeriodicTask(PeriodicTask):

    name = "periodic-task"
    run_every = timedelta(seconds=3)

    def run(self, **kwargs):

        logger = self.get_logger(**kwargs)
        logger.info("Running periodic task!")
tasks.register(MyPeriodicTask)

wmi_collector_task = worker_app.tasks[MyPeriodicTask.name]
文件运行任务.py

class MyPeriodicTask(PeriodicTask):

    name = "periodic-task"
    run_every = timedelta(seconds=3)

    def run(self, **kwargs):

        logger = self.get_logger(**kwargs)
        logger.info("Running periodic task!")
tasks.register(MyPeriodicTask)

wmi_collector_task = worker_app.tasks[MyPeriodicTask.name]

提前感谢。

要运行定期任务,您需要启动芹菜节拍。启动辅助程序时,可以通过传递-B参数来实现这一点:

celery worker -B --app=worker_manager.celery --loglevel=info 

谢谢当我添加选项-B时,我会在启动worker时执行定期任务。如何在run_tasks.py中运行任务