본문 바로가기
Programming/Python

django-celery 장고에 스케쥴 설정

by NAMP 2017. 5. 14.

django-celery 장고에 스케쥴 설정

django-celery 설치

pip install django-celery

proj/proj/settings.py 수정

INSTALLED_APPS = [ ... 'djcelery', 'kombu.transport.django', ]

데이터베이스 테이블 생성

python manage.py makemigrations python manage.py migrate

proj/proj/settings.py 수정

import djcelery djcelery.setup_loader() BROKER_URL = 'django://' CELERYBEAT_SCHEDULER = 'djcelery.schedulers.DatabaseScheduler'

proj/app/tasks.py 파일 생성

import datetime import celery @celery.decorators.periodic_task(run_every=datetime.timedelta(minutes=1)) def myfunc(): print('periodic_task')
from celery.task import periodic_task from celery.schedules import crontab @periodic_task(run_every=crontab(hour="*", minute="0", day_of_week="*"), ignore_result=True) def my_test(): print('periodic_task', 'my_test')

실행

python manage.py celery worker --loglevel=DEBUG -E -B -c 1

admin 페이지 접속

http://127.0.0.1:9000/admin/djcelery/

crontab 설정법


댓글