#python python... PYTHON 🔛 🚀
11 subscribers
914 photos
7 videos
158 files
1.54K links
Download Telegram
Forwarded from Zen of Python
Знакомимся с FastAPI: Чем он хорош

FastAPI — молодой фреймворк, который быстро набрал популярность благодаря своей простоте и удобству.

В этой статье рассматриваются основные преимущества фреймворка такие, как удобное внедрение зависимостей, простой интерфейс и интеграция с базами данных, автоматическая генерация документаций и другие:

https://tprg.ru/TghE

#fastapi
Как запускать синхронные функции в асинхронном роуте FastAPI?

Иногда так случается, что приходится использовать синхронный код в асинхронном роуте.
Если мы попытаемся вызвать синхронную функцию в асинхронном коде - наш event loop заблокируется и всё "зависнет" до тех пор, пока синхронный код не отработает.

Решений, как это сделать, на самом деле много. Самый простой вариант, который предоставляет FastAPI (а если быть точнее - Starlette, который использует anyio) - функция run_in_threadpool, которая запустит синхронный код в потоке:

@app.get("/")
async def my_router():
result = await service.execute()
client = SyncClient()
return await run_in_threadpool(client.execute, data=result)

Кстати, BackgroundTask использует тот же самый способ, только он не возвращает результат выполнения.

А как бы вы решали/решаете такую проблему? Пишите в комментариях 😎 !

#fastapi #anyio
Forwarded from Zen of Python
Создание полного Fast-API сервиса с фронтендом и деплоем за полчаса

Статья для тех, кто устал от теории и хочет получить нужную практику. Вы разработаете полноценный веб-сервис с фронтендом и бэкендом. В проекте используется фреймворк FastApi , сервис WebSim, который сгенерирует для вас фронтенд и библиотеку CurlFetch2Py, которая будет выполнять основную логику приложения.

В итоге у вас получится приложение, которое будет принимать на входе CURL или FETCH строку и будет трансформировать её в Python код. Подробнее в статье:

https://habr.com/ru/companies/amvera/articles/833588/

#webdev #fastapi