Django celery

500 руб. за проект
17 июля 2024, 21:15 • 1 отклик • 15 просмотров
Не срабатывает celery beat и worker при выполнении API, в которой есть фукнция с task.


А именно, при выполнении API на Django Rest Framwork, таск, который указан в этой API не срабатывает, celery beat не получает задачи, и соответственно celery worker ее не выполняет.


Даже если попытаться выполнить через python manage.py shell, то он ее не выполняет


result = update_information.apply_async(args=["мой_url", 51, 76])


т.е. celery beat не получает задачу


А если ее выполнить "руками на данный момент" так же в shell, то она выполняется


result = update_information("мой_url", 51, 76)






Сам task (путь к таску) celery (worker) видит (судя по логам), и соединяется с Redis


В БД с соответствующих таблицах (Crontabs и Periodic tasks) задачи (записи) появляются






Я использую Redis у себя локально развернутый (сервер), а celery (worker, beat, flower) и django запускаю в разных терминалах


Redis - 5.0.14.1 (сервер)


celery==5.4.0


Django==5.0.4


djangorestframework==3.15.1
Отзывы
Avatar r50 a6ce93fe35b158fd29ba0e8681c918c22117160e9586a56eee4ffbc20df9bda1
Заказчик
Рекомендую Дмитрия, как ответственного исполнителя. Задача включала в себя знания из разных областей Django, celery и сервака, справился раньше срока
5 месяцев назад
Avatar r50 a6ce93fe35b158fd29ba0e8681c918c22117160e9586a56eee4ffbc20df9bda1
Фрилансер
 
5 месяцев назад