Каков наилучший и безопасный для производства способ эффективно обрабатывать их в Django, в идеале с параллельной обработкой?
Я работаю над приложением Django, в которое пользователи загружают большие текстовые файлы, которые необходимо проанализировать и сохранить в базе данных PostgreSQL. Файлы могут содержать сотни тысяч строк, и их обработка может занять много времени.
В настоящее время я использую потоковую обработку.Поток с сохраняемой в памяти tasks_registry обрабатывает файл и передает статус задачи. Это работает при разработке, но теперь я понимаю, что такой подход небезопасен в производстве, особенно с Gunicorn и несколькими рабочими.
загружайте данные / обрабатывайте файл параллельно для повышения производительности
Отправьте ответ во внешний интерфейс после завершения загрузки , в то время как обработка продолжается в фоновом режиме
Безопасно обработайте это с помощью Gunicorn или другого сервера WSGI
Какие-либо рекомендации по архитектуре или проверенным шаблонам были бы очень полезны?