celery + supervisord

celery 를 데몬방식으로 실행해야할 경우, 몇 가지 방법이 있는데 그 중에 하나가 supervisor 를 이용하는 것이다. pip install supervisor 위와 같이 설치하고 나서 현재 celery task 가 있는 프로젝트에서 supervisord.conf 를 만들고, 마지막줄에 celeryd.conf 를 include 를 한다. $ echo_supervisord_conf > supervisord.conf $ vi supervisord.conf ... [include] files = celeryd.conf 그리고 celeryd.… Read More

celery states

아래는 celery 의 state 인데, 보통 celery-flower 조합으로 많이 쓰기 때문에 flower를 쓰다보면 조회 조건중에 states 가 있어서 아래와 같이 정리해본다. 즉시 실행하라고 명령하면 STARTED-SUCCESS 또는 FAILURE 로 표시되겠지만, countdown을 주어서 실행한 경우에는 즉, 어떤 예약을 거는 경우에는 해당 task가 RECEIVED 로 표시되게 된다. 그리고 flower상에서 RECEIVED 인 task들은 아직 미 실행 상태이기 때문에 REVOKED(… Read More

Celery Install Ubuntu & CentOS 6.5

celery 설치 pip install celery *rabbitmq 설치 * ubuntu sudo apt-get install rabiitmq-server centOS6.5 ceontOS 에서는 설치하는 것이 복잡한데 잘 따라오면 된다. 먼저 erlang 부터 설치해야 한다. 아래의 텍스트를 /etc/yum.repos.d/ 디렉토리에 epel-erlang.repo 파일명으로 넣는다. erlang 설치하기 이 부분에서 이런식으로 가져올수도 있는데, 이럴 경우 base_url 이 깨진 링크로 잡힐수가 있다. 잘… Read More

python Celery 기본 세팅

예전부터 써보고 싶었는데 관련 업무가 주어져서(정확히는 그냥 내가 쓰고싶은데 업무시간에 테스트 하고 싶어서) 정리해 본다. 그냥 아주 기본적으로 돌려보는 정도.  Broker 세팅(Redis) – redis.io 에서 설치하면 끝  – 홈페이지에 나와있는 별도의 세팅은 redis.conf에서 하는것이 아님.  Task 만들기 – 하고자 하는 일을 정의하는데 @app.task 라고 써둔다.  – 위의  코드에서 보면 add와 insert_log 같은 task… Read More

Python Weekly 159

파이썬 위클리에서 개인적으로 관심있는것들만 정리하였음.  memory_util – https://github.com/jtushman/memory_utils – 파이썬기반으로 간단하게 현재 메모리 상태, 메모리 와쳐, 메모리 체크를 할수 있는 유틸 Celery in Production  – Celery 를 배포하는 과정에서 어떻게 해야하는지에 대해서 설명한글  – 이글 이전글인 Getting Started Scheduling Tasks with Celery 도 Celery를 쓰기 위해서 django와 연계해서 어떻게 해야 하는지 잘 설명해주는… Read More