django+celery定时任务

1、安装django-celery-beat

2、windows下安装redis server,win+r启动redis server: redis-server redis.windows.conf

3、在app/tasks.py中添加定时方法

from celery import shared_task

@shared_task
def test_beat(x, y):
    print(x+y)

4、在mysite/settings.py中添加:

from datetime import timedelta

# 定时任务
CELERYBEAT_SCHEDULE = {
    'add-every-30-seconds':{
        'task': 'home.tasks.test_beat',     # 任务名
        'schedule': timedelta(seconds=2),   # 每2s执行一次该任务
        'args': (2, 3)
    }
}

新增任务时,可类似继续添加

5、启动worker、beat

celery -A mysite worker -l info -P eventlet

celery -A mysite beat -l info

6、结果:

django+celery定时任务_第1张图片

 

你可能感兴趣的:(django,celery)