바뀜

둘러보기로 가기 검색하러 가기
404 바이트 추가됨 ,  2023년 1월 10일 (화) 18:36
1번째 줄: 1번째 줄:  
== 개요 ==
 
== 개요 ==
장고나 플라스크 등 웹서버에서 오래걸리는 작업을 수행하게 되면 timeout이 떠버려 결과를 받아볼 수가 없다. 그렇다고 웹서버의 timeout을 늘려버리면 비효율적인 자원낭비가 예상되어 함부로 늘릴 수도 없다. 그럴 때 사용하는 celery(샐러리).
+
장고 내에서 셀러리를 사용하기 위한 정보를 담은 문서. 완전 기초론 아무것도 배울 수 없기에 적절한 활용이 가능할 지식을 담아보았다.
   −
장고 내에서 셀러리를 사용하기 위한 정보를 담은 문서.
+
=== 용도 ===
 +
 
 +
* 장고나 플라스크 등 웹서버에서 오래걸리는 작업을 수행하게 되면 timeout이 떠버려 결과를 받아볼 수가 없다. 그렇다고 웹서버의 timeout을 늘려버리면 비효율적인 자원낭비가 예상되어 함부로 늘릴 수도 없다. 그럴 때 사용하는 celery(샐러리).
 +
* 스케쥴링 작업을 할 때에도 사요한다.
    
=== 운용방식 ===
 
=== 운용방식 ===
139번째 줄: 142번째 줄:  
|샐러리 실행
 
|샐러리 실행
 
|[데몬으로 시작하는 법은 따로 있나보다.]
 
|[데몬으로 시작하는 법은 따로 있나보다.]
 +
다른 터미널 창을 열어 따로 실행해주어야 한다.
 +
 +
task.py의 내용이 바뀌면 재실행 해주어야 한다.(장고의 내용이 바뀌면 재실행하듯.)
 
|celery -A settings.py가있는폴더.celery worker --loglevel=info
 
|celery -A settings.py가있는폴더.celery worker --loglevel=info
 
|}
 
|}
172번째 줄: 178번째 줄:  
|뷰
 
|뷰
 
|delay()는 celery의 업무를 수행하는 apply_async()의 간소판.
 
|delay()는 celery의 업무를 수행하는 apply_async()의 간소판.
카운트다운이나 재실행 등의 자세한 옵션은 apply_async()에 더 자세한 변수를 넣음으로써 가능해진다.
+
카운트다운이나 재실행 등의 자세한 옵션은 apply_async()에 더 자세한 변수를 넣음으로써 가능해진다.(좀 과하게 긴 작업을 제한한다든가.)
 
|<syntaxhighlight lang="python">
 
|<syntaxhighlight lang="python">
 
from django.shortcuts import render, redirect
 
from django.shortcuts import render, redirect

둘러보기 메뉴