首页  >  问答  >  正文

python - celery定时任务如何不延迟执行

在使用celery做定时任务的时候,比如下面代码

app.conf.beat_schedule = {
    # 'login_task': {
    #     'task': 'tasks.login.excute_login_task',
    #     'schedule': 60*60*20.0,
    # },
    'test_celery': {
        'task': 'tasks.login.test_timertask',
        'schedule': 60.0,
    }
}

在使用

celery beat -A tasks.login --loglevel=info

后,会延迟60秒才执行第一次任务。请问一下,怎么写能让它在刚启动定时任务的时候就执行,然后每过60s再次执行?

伊谢尔伦伊谢尔伦2710 天前832

全部回复(1)我来回复

  • 高洛峰

    高洛峰2017-05-18 11:00:11

    简单方法 在这个之后 or 之前调用tasks.login.test_timertask()

    app.conf.beat_schedule = {

    # 'login_task': {
    #     'task': 'tasks.login.excute_login_task',
    #     'schedule': 60*60*20.0,
    # },
    'test_celery': {
        'task': 'tasks.login.test_timertask',
        'schedule': 60.0,
    }

    }

    回复
    0
  • 取消回复