Django 프로젝트에서 batch job 돌리기
django-background-tasks 모듈 활용하기
동작방식
- django 웹과 별도의 프로세스로 동작 시키기
- 별도의 명령어 실행
$ python manage.py process_tasks
django 웹안에서 동작 시키기
- API 형태로 호출하여 실행
# urls.py urlpatterns = [ url(r'^v1/tasks/$', views.tasks, name='tasks'), ]
# views.py @csrf_exempt def tasks(request): if request.method == 'POST': message = request.POST.get('message', False) return demo_task(request) else: return JsonResponse({}, status=405) @background(schedule=60) def demo_task(message): logger.debug('demo_task. message={0}'.format(message))
- django 웹과 별도의 프로세스로 동작 시키기
'개발 > python' 카테고리의 다른 글
Python multiprocess vs multithread (0) | 2018.05.24 |
---|---|
django mysql rest api project (0) | 2018.03.11 |
Django 프로젝트 (0) | 2017.11.29 |
Django 프로젝트 생성 및 App 만들기 (0) | 2017.08.27 |
Python Django WEB project 개발하기1 (0) | 2016.08.17 |