Найти - Пользователи
Полная версия: Асинхронные задачи в flask
Начало » Web » Асинхронные задачи в flask
1
Boris875
От пользователя нужно принять данные и распарсить их. Подскажите пожалуйста как запускать процесс обработки данных. Как я понимаю нужно или использовать какую-то асинхронную библиотеку или использовать (потоки/процессы)?
4kpt_II
Если ответ нужен не сразу, то я бы бросил на серели и не стал бы мучатся
Boris875
4kpt_II
А как на строне пользователя это реализовывать. Я имею ввиду что на странице в этот момент отобрать (прогресс бар какой-нить) или как-то по другому?

Кстати читал “Мега учебник flask”, там автор предлагает использовать процессы или потоки. Это ничем не черевато?
wiygn
Boris875
Flask не предназначен для асинхронности. Процессы точно чреваты, потому что нужно будет гонять между ними данные (если речь не идет о тупом наращивании количества запущенных инстансов приложения).

Человек с Celery дело говорит, очередь задач/сообщений подойдет (но не обязательно использовать именно эту).

Может вы под асинхронные задачи возьмете разработанные для этого вещи? Tornado/Cyclone, например?

Да, еще учтите, что к базе, если вы в нее что-то пишете, тоже нужен асинхронный драйвер (Motor — асинхронный pymongo для Tornado).
4kpt_II
Тут уже не Торнадо, хотя он тоже ничего так. Мне уважаемые дядьки нашептали, что нужно смотреть в сторону asyncio. Причем доклад одного из этих дядек в этом убеждает. Хотя статься по работе с БД и вызвала неоднозначные эмоции, но все же я верю в этот проект.
wiygn
4kpt_II
Да, asyncio штука перспективная. Tornado, кстати, умеет с ней работать.

Еще есть вот такая интересность:
https://github.com/aio-libs/aiorest
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB