Фоновые задачи с Django на Heroku
Итак, я создаю приложение Django на Heroku. Задачи, которые выполняет приложение, часто выполняются дольше 30 секунд, и поэтому я сталкиваюсь с таймаутом в 30 секунд, установленным Heroku. Сначала я пытался решить эту проблему, отправляя задачу из моего представления Django в AWS lambda, но в этом случае представление ждет завершения работы функции AWS Lambda, поэтому это не решает мою проблему.
Я уже прочитал учебники на Heroku по обработке фоновых задач с Django. Сейчас я столкнулся с несколькими различными вариантами того, как действовать дальше, и хотел бы получить мнение со стороны о том, какой из них имеет наибольший смысл:
- Используйте Celery & Redis для управления фоновыми задачами, и пусть задачи выполняются на AWS Lambda.
- Используйте Celery & Redis для управления фоновыми задачами, но пусть задачи выполняются в скрипте Python на Heroku. .
- Пытаюсь решить эту проблему с помощью asyncio, чтобы сделать ее более компактной (не уверен, что этот конкретный случай можно решить с помощью asyncio?
Может быть, есть еще лучшее решение, которого я не вижу?
Жду любого вклада/предложений!