2013-06-14 3 views
2

내 응용 프로그램에서 장고 - 셀러리를 구성했습니다. 내가보기에 추가 할 때작업을 올바르게 호출하는 방법?

from celery.decorators import task 
import simplejson as json 
import requests 

@task 
def call_api(sid): 
    try: 
     results = requests.put(
      'http://localhost:8000/api/v1/sids/'+str(sid)+"/", 
      data={'active': '1'} 
     ) 
     json_response = json.loads(results.text) 
    except Exception, e: 
     print e 
    logger.info('Finished call_api') 

가 :

는 는 는 ...

너무 좋은,하지만 아무것도 일이 없어야 있습니다

Got task from broker: my_app.tasks.call_api[755d50fd-0f0f-4861-9a18-7f4e4563290a] 
Task my_app.tasks.call_api[755d50fd-0f0f-4861-9a18-7f4e4563290a] succeeded in 0.00513911247253s: None 
:

call_api.apply_async(
       (instance.service.id,), 
       eta=instance.date 
      ) 

celeryd 나를 보여줍니다이 내 작업입니다 예를 들어 전화를 건다 :

http://localhost:8000/api/v1/sids/1/ 

화 나는 틀린가?

답변

0

셀러리를 별도의 프로세스로 실행하고 있습니까? 당신은 셀러리를 실행 (또는 셀러리를 장고) 별도의 프로세스로까지 명령 sudo는 파이썬 manage.py의 celeryd를 사용하여 우분투 실행의 예를 들어 는

, 작업은 데이터베이스 (또는 대기열 또는 영구 저장됩니다 일반적으로 settings.py에 구성되어 있습니다.

관련 문제