Требования к проекту Django, который не подходит для DigitalOcean App Platform?
Для проекта django с celery для асинхронных задач, nginx, gunicorn, пользователи и загруженные пользователем файлы на aws s3, сторонние вызовы api, отображение данных ответа api и запросов к базе данных и т.д... что означает, что платформа digitalocean app предназначена для статических сайтов, что именно она не может сделать?
Я смотрел видео, где объясняется, что платформа приложений DO может обрабатывать динамический контент с помощью react и т.д., но она не поддерживает фоновые службы. Я не совсем понимаю, что это значит, если вы можете использовать celery.
Некоторые люди задавали вопросы о цифровом океане, но не получили ответа:
https://www.digitalocean.com/community/questions/how-to-create-celery-worker-on-app-platform https://www.digitalocean.com/community/questions/what-are-the-limitations-of-digital-ocean-apps
Также в различных видео и сообщениях в Интернете не говорится о том, какие функции нестатических сайтов нельзя использовать, а только упоминается, что они предназначены для статических сайтов, а данные являются эфемерными. Также в обучающих видео просто развертывается приложение django по умолчанию, поэтому я не могу увидеть, для чего его можно использовать, а для чего нет.
В одном из сообщений говорится: "Если ваше приложение требует доступа к базовой инфраструктуре, вы, вероятно, захотите отойти от App Platform", каковы примеры необходимости доступа к базовой инфраструктуре?
Еще один комментарий из сообщения: "Если у вашего приложения нет сложных требований к инфраструктуре, вы сэкономите время и деньги, поскольку вам не придется нанимать инженера по эксплуатации", что такое сложные требования к инфраструктуре?
Одна проблема, о которой я подумал, заключается в том, что при каждом развертывании миграция postgres с обязательными полями, которым нужно присвоить значения по умолчанию или закомментировать их, чтобы мигрировать другие модели с внешними ключами к ним, может стать проблемой, поскольку все папки миграции будут перезаписаны. Я не совсем понимаю, как использовать существующую базу данных postgres, делая при этом свежую миграцию базы данных при каждом развертывании. Подходит ли это для платформы приложения?
Можно ли использовать celery beat, который сохраняет в корневой папке файл celerybeat-schedule.db? Кажется, вы можете просто изменить расписание при каждом развертывании?
Предполагаю, что ответ будет также применим к Heroku или другим платформам эфемерного хранения данных.
Какие услуги и функции нельзя использовать с платформой Digital Ocean App?