на обработку реквестов? Они выполняются в одном потоке или всё таки для команд создаётся отдельный процесс? Сейчас у меня есть команда, которая в будущем может долго обрабатывать файлы и посылать запросы в бд.
насколько я знаю, django-команды запускаются в отдельном от серверного процессе, поэтому не должны ничего блокировать
Спасибо, тогда пока оставлю как есть. Не нашёл ни одного подобного вопроса в интернете, да и в документации об этом ни слова. Наверное само собой разумеющееся. Ещё раз спасибо
Процесс/поток(что именно я не разбирался) отдельный, а вот терминал блокироваться вполне себе может. Так что если ты там в докере что-то делаешь перед стартом приложухи, то это может затянуться
Вариант с Celery\Cron не рассматривается?
а если штанга упадет, кто твой файл будет дообрабатывать / начинать обработку заново?
Джанго команды можно в отдельный сервис вообще запихнуть и пускай себе крутятся
В смысле? Если это отдельный процесс, как он может упасть? Обработка ошибок у меня есть. И плюс, там, по идее, маленькие файлы но большое их количество, после обработки файла он удаляется
Можно, просто если сервисов станет слишком много, то будут проблемы со свормом(лично у меня на 20+ сервисах стек поднимался раза с 5, как старый жигуль, ей-богу)
Может-может, как минимум, гонка в бд возникла или там транзакция в айдл ушла и там зависла. Если крон используешь, то бери какойнибудь django-apscheduler, он в бд записывает все и даже в случае перезапуска сервиса все равно вовремя выполнит команду
Обсуждают сегодня