У меня есть приложение, развернутое на heroku.Python flask heroku - Поле загрузки изображений (WTForms) делает тайм-аут APP (занимает слишком много времени)
Работает с 1-го дня, и я заметил в журналах, что пользователи часто получают ошибку H13 или H28 на определенном сайте.
Я уже нашел проблему. На этом сайте пользователи могут загружать изображения (не более 10). Я использую там 1 Поле ввода для изображений, где я разрешаю multiselect, поэтому единственный способ загрузить несколько изображений - это сделать это сразу.
WTForms:
bild = FileField("Weitere Bilder hochladen", validators=[FileAllowed(['jpg', 'png', 'jpeg'], 'Nur Bilder im Formal JPG oder PNG')])
Heroku имеет тайм-аут по умолчанию 30 секунд, если запрос не обрабатывается. Но процесс загрузки нескольких изображений слишком длинный, и поэтому герой прерывает процесс и показывает страницу пользовательских ошибок.
Моей идея:
Чтобы решить эту проблему, я бы отключить MULTISELECT и добавить 9 FileFields в выводе дополнительного WTForms, поэтому пользователь должен загружать изображения один на один, это путь?
Или я должен добавить индикатор выполнения и увеличить тайм-аут, что является лучшей практикой здесь?
EDIT
Хорошо, я нашел несколько решений, но я хотел бы использовать индикатор и увеличить время ожидания запроса от Heroku.
Я постараюсь, чтобы загрузить новую PROCFILE:
web: gunicorn main:app --timeout 120