Запуск django-сельдерея 3.1.16, Сельдерей 3.1.17, Django 1.4.16. Попытка запустить несколько параллельных задач с использованием 3 рабочих и собирать результаты, используя следующие:сельдерей параллельная задача ошибка «нет результата бэкэнда настроен»
from celery import group
positions = []
jobs = group(celery_calculate_something.s(data.id) for data in a_very_big_list)
results = jobs.apply_async()
positions.extend(results.get())
celery_calculate_something задача возвращает объект, чтобы поместить в списке результатов:
app.task(ignore_result=False)
def celery_calculate_something(id):
<do stuff>
Независимо от того, что я пытаюсь Я всегда получаю тот же результат при вызове Get() по результатам:
No result backend configured. Please see the documentation for more information.
Однако бэкенд результаты сконфигурирован - у меня есть много других задач с ignore_result = False м ошибочно добавляя метаданные задач в django_celery. Это как-то связано с использованием результатов, возвращаемых из группы(). Я должен отметить, что он не установлен явно в настройках - кажется, что django-сельдерей установил его автоматически для вас.
У меня есть рабочий сбор событий с помощью:
manage.py celery worker -l info -E
и celerycam работает с
python manage.py celerycam
Осмотрев объект результаты возвращаются (экземпляр GroupResult) я могу видеть, что базовая атр является экземпляр DisabledBackend. Это проблема? Что я неправильно понял?