Forwarded from Zen of Python
Знакомимся с FastAPI: Чем он хорош
FastAPI — молодой фреймворк, который быстро набрал популярность благодаря своей простоте и удобству.
В этой статье рассматриваются основные преимущества фреймворка такие, как удобное внедрение зависимостей, простой интерфейс и интеграция с базами данных, автоматическая генерация документаций и другие:
https://tprg.ru/TghE
#fastapi
FastAPI — молодой фреймворк, который быстро набрал популярность благодаря своей простоте и удобству.
В этой статье рассматриваются основные преимущества фреймворка такие, как удобное внедрение зависимостей, простой интерфейс и интеграция с базами данных, автоматическая генерация документаций и другие:
https://tprg.ru/TghE
#fastapi
Forwarded from Коробка с питоном
Как запускать синхронные функции в асинхронном роуте FastAPI?
Иногда так случается, что приходится использовать синхронный код в асинхронном роуте.
Если мы попытаемся вызвать синхронную функцию в асинхронном коде - наш event loop заблокируется и всё "зависнет" до тех пор, пока синхронный код не отработает.
Решений, как это сделать, на самом деле много. Самый простой вариант, который предоставляет FastAPI(а если быть точнее - Starlette, который использует anyio) - функция run_in_threadpool, которая запустит синхронный код в потоке:
А как бы вы решали/решаете такую проблему? Пишите в комментариях 😎 !
#fastapi #anyio
Иногда так случается, что приходится использовать синхронный код в асинхронном роуте.
Если мы попытаемся вызвать синхронную функцию в асинхронном коде - наш event loop заблокируется и всё "зависнет" до тех пор, пока синхронный код не отработает.
Решений, как это сделать, на самом деле много. Самый простой вариант, который предоставляет FastAPI
@app.get("/")Кстати, BackgroundTask использует тот же самый способ, только он не возвращает результат выполнения.
async def my_router():
result = await service.execute()
client = SyncClient()
return await run_in_threadpool(client.execute, data=result)
А как бы вы решали/решаете такую проблему? Пишите в комментариях 😎 !
#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
Статья для тех, кто устал от теории и хочет получить нужную практику. Вы разработаете полноценный веб-сервис с фронтендом и бэкендом. В проекте используется фреймворк FastApi , сервис WebSim, который сгенерирует для вас фронтенд и библиотеку CurlFetch2Py, которая будет выполнять основную логику приложения.
В итоге у вас получится приложение, которое будет принимать на входе CURL или FETCH строку и будет трансформировать её в Python код. Подробнее в статье:
https://habr.com/ru/companies/amvera/articles/833588/
#webdev #fastapi