Требование: Загрузить файлы с использованием фляжной рамки. После загрузки на сервер пользователь должен иметь возможность видеть файл в пользовательском интерфейсе.Лучший способ загрузки больших файлов csv с использованием флэша python
Текущий код: Для удовлетворения вышеуказанного требования я написал код для загрузки достаточно больших файлов и его работы с файлом (~ 30 МБ, да, конечно, не так быстро). Но когда я пытаюсь загрузить файл (~ 100 МБ), он занимает слишком много времени, и процесс никогда не завершается.
Это то, что в настоящее время я делаю:
UPLOAD_FOLDER = «/ TMP»
file = request.files['filename']
description = request.form['desc']
filename = secure_filename(file.filename)
try:
file.save(os.path.join(UPLOAD_FOLDER, filename))
filepath = os.path.join(UPLOAD_FOLDER, filename)
except Exception as e:
return e
data = None
try:
with open(filepath) as file:
data = file.read()
except Exception as e:
log.exception(e)
Так что я делаю, первый сохранить файл во временную папку на сервере, а затем с этого чтения данных и помещать их в нашу базу данных. Я думаю, что это то место, где я борюсь, я не уверен, что это лучший подход.
Должен ли я принимать данные от пользователя и возвращать сообщение об успешном завершении (, очевидно, что пользователь не сможет сразу получить доступ к файлу, а затем) и сделать данные в базе данных фоновым процессом, используя какую-то систему очередей , Или Что еще нужно сделать для оптимизации кода.