поставил селери + редис
settings.py
USE_TZ = False
BROKER_HOST = "localhost"
BROKER_BACKEND="redis"
REDIS_PORT=6379
REDIS_HOST = "localhost"
BROKER_USER = ""
BROKER_PASSWORD =""
BROKER_VHOST = "0"
REDIS_DB = 0
REDIS_CONNECT_RETRY = True
CELERY_SEND_EVENTS=True
CELERY_RESULT_BACKEND='redis'
CELERY_TASK_RESULT_EXPIRES = 10
CELERYBEAT_SCHEDULER="djcelery.schedulers.DatabaseScheduler"
CELERY_ALWAYS_EAGER=False
CELERY_INPORTS = ["my_app.tasks"]
import djcelery
djcelery.setup_loader()
INSTALLED_APPS += ( 'djcelery',)
пускаю селери
./manage.py celeryd -l INFO -B -E
потом набирают в шелле
from celery.task import task
@task
def add():
return True
a = add.apply_async(countdown =30)
a.get()
на что получаю
Received unregistered task of type 'default.add'.
The message has been ignored and discarded.
Did you remember to import the module containing this task?
Or maybe you are using relative imports?
Please see http://bit.ly/gLye1c for more information.
The full contents of the message body was:
{'retries': 0, 'task': 'default.add', 'utc': False, 'args': [], 'expires': None, 'eta': '2012-04-22T23:39:52.439499', 'kwargs': {}, 'id': '079403c1-552d-4599-983e-394937fb9ce1'}
Выручайте. 2 дня мучаюсь, в ггугле и в доках нечего нету. я уже заплатить(в разумных пределах) готов, что бы сделали. надеюсь на вашу помощь.
P.S: пытался и через views запустить задачу, эффект тотже. задачу ложил в my_app/tasks.py и прописывал в settings.py CELERY_IMPORTS["ma_app.tasks"]