2012-08-03 4 views
3

셀렉트를 시작하면서 정기적 인 작업을 실행하려고합니다.셀리 비트를 구성하고 실행하는 방법

* rabbitmq **가 celeryconfig.py를 추가했습니다. 내가 메시지를

celerybeat 
celerybeat v3.0.3 (Chiastic Slide) is starting. 
__ - ... __ -  _ 
Configuration -> 
    . broker -> amqp://[email protected]:5672// 
    . loader -> celery.loaders.default.Loader 
    . scheduler -> celery.beat.PersistentScheduler 
    . db -> celerybeat-schedule 
    . logfile -> [stderr]@INFO 
    . maxinterval -> now (0s) 
[2012-08-03 14:24:52,202: INFO/MainProcess] Celerybeat: Starting... 

를 follwing을 실행하기 시작 내 터미널에서 "celerybeat"를 입력하여 celerybeat을 시작하고있을 때 지금

from celery.decorators import periodic_task 
from datetime import timedelta 

@periodic_task(run_every=timedelta(seconds=2)) 
def every_2_seconds(): 
    print("Running periodic task!") 

: tasks.py 코드 다음

그리고 추가 터미널에 every_2_seconds 메서드의 출력이 없습니다. 나는 실행할 응용 프로그램이나 셀 리 비트 명령 중에 작업을 지정해야한다고 가정합니다. 어떻게 그렇게 할 수 있습니까?

작업을 지정하고 2 초마다 주기적으로 작업을 인쇄하려면 어떻게해야합니까?

감사합니다.

답변

3

CELERY_IMPORTS=("tasks",)을 celeryconfig.py에 추가 한 다음 celerybeat를 실행하십시오.

+2

또한 "정기 작업 실행 중!"이 인쇄 될 celeryd를 실행하십시오. 2 초마다. – mushfiq

+0

안녕하세요 @ mushfiq - 도와 드릴까요? 샐비어 멀티를 통해 셀 비트 멀티를 통해 - 비트 및 - 스케줄 옵션을 실행하고 있지만 어떤 작업도 실행되고 있지 않습니다. 나는'CELERY_IMPORTS = ("tasks",)'와 함께'@ app.periodic_task'로 장식 작업을 시도했지만 성공하지 못했습니다. – Greg0ry

+0

@ Greg0 브로커가 작동 중입니까? 실행중인 셀러리 버전은 무엇입니까? – mushfiq