Найти - Пользователи
Полная версия: Неблокирующий запуск функции
Начало » Python для новичков » Неблокирующий запуск функции
1
winmasta
Всем привет, пишу кое-какое API на Flask и возник вопрос, как вернуть значение из функции и потом продолжить выполнение логики. Поясню кейс. При изменении записи в CRM срабатывает вебхук который посылает HTTP запрос на наше API с измененными данными. В этот момент запись блокируется и мы получаем HTTP запросом уже к API CRM ее старые значения. Далее происходит обработка данных, формирование email и отправка и все это время запись висит заблокированной (в среднем 4 секунды), но нам можно отпустить запись уже после получения ее старых значений, для этого нужно в ответ на хук вернуть 200 ОК. Есть конечно вариант сохранить данные, вернуть 200 ОК и потом уже каким-то образом поработать с данными, но мне кажется возможно сделать все на лету. Понимаю, что нужно копать в сторну asyncio, почитал, посмотрел, но пока не могу понять как это сделать. Может был у кого подобный опыт ?
VadimK
Смотрeть в сторону задач (tasks). К примеру celery или uwsgi.
winmasta
VadimK
Смотрeть в сторону задач (tasks). К примеру celery или uwsgi.
спасибо поизучаю
winmasta
Прикрутил uwsgi-tasks ибо проект как раз на uwsgi и крутится, все работает отлично.
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