Запуск отдельной задачи в фоновом режиме django rest framework
Мне нужно выполнить две задачи в запросе API, но я хочу запустить вторую задачу асинхронно в фоновом режиме, чтобы API не ждал выполнения второй задачи и вернул ответ после завершения первой задачи, как я могу этого добиться?
@api_view(['POST'])
def create_project(request):
data = first_task()
second_task(data) # want to run this function at background
return Response("Created") # want to return this response after completion of first_task()
Для запуска асинхронной функции необходимо использовать другие методы, вы можете использовать любой из следующих:
- django-background-tasks: Простой и не требует рабочего .
- python-rq: Отлично подходит для простых асинхронных задач .
- celery: Более полное решение .