Я работаю с Celery http://celery.readthedocs.org/en/latest/index.html
Мне нужно запускать периодические задачи в определенный момент. Но я хочу начать свою задачу только после запуска работника сельдерея.
Для этого я пытаюсь создать свою собственную «Периодическую задачу». Но я решаю проблему.
Когда я запускаю воркер и выполняю 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!")
файл run_tasks.py
tasks.register(MyPeriodicTask)
wmi_collector_task = worker_app.tasks[MyPeriodicTask.name]
Заранее спасибо.