home.social

#fastapi — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #fastapi, aggregated by home.social.

fetched live
  1. Развитие FastAPI приложения в ходе разработки production-системы

    Полтора года назад я написал о своём подходе к структуре FastAPI-приложений. С тех пор два крупных проекта, production и несколько архитектурных граблей заставили меня многое пересмотреть. В этой статье расскажу, что изменилось и какие решения действительно упростили мне разработку.

    habr.com/ru/articles/1073130/

    #FastAPI #Python #SQLAlchemy #Docker #Clean_Architecture #DDD #Repository_Pattern #Unit_of_Work #backendразработка #архитектура_ПО

  2. 3000 точек на карте грузились полсекунды. Ускорял не там, где думал

    Эндпоинт отдавался за 380–510 мс и 811 КБ. Я думал, что причина одна – тяжёлый запрос. Разобрался: причин было три, и они лежали одна под другой. Пока не убираешь верхнюю, следующую просто не видно. Индексы, обход ORM и внезапно – gzip, который не был включён вообще.

    habr.com/ru/articles/1073070/

    #MongoDB #FastAPI #Beanie #ORM #оптимизация_API #индексы_MongoDB #gzip #nginx #Python #explain

  3. How to use #AI to generate type-safe #Python code that survives production
    Build a #FastAPI endpoint with AI by designing first and prompting second.

    allthingsopen.org/articles/ai-

  4. От капстоуна к продакшену: fail‑fast, structured logs, Prometheus и Docker‑образ 8.15GB → 1.35GB

    У меня есть RAG‑сервис: проверяет фактологические утверждения в бизнес‑отчётах против реальных источников — SEC EDGAR, World Bank, FRED, Wikipedia. Это капстоун LLM Zoomcamp (DataTalksClub). Курс закончился, оценку поставили (peer review, 42/42), а я решил дотянуть проект до состояния «не стыдно показать на собеседовании как рабочий код», а не просто «закрыл критерии оценки курса».

    habr.com/ru/articles/1071230/

    #docker_image_size #onnx #sentencetransformers #fastapi #prometheus #grafana #structlog #mlops #RAG

  5. Структурированные логи в FastAPI: практический гайд от request_id до trace_id

    Самая неприятная часть расследования инцидента начинается, когда нужные данные в логах вроде бы есть, но связать их между собой невозможно. Один запрос оставляет десятки строк, пользовательский контекст теряется, а события микросервисов живут каждый своей жизнью. На примере FastAPI соберём JSON‑логирование, в котором запрос можно проследить целиком, ошибки — фильтровать по типу, а задержки — анализировать по duration_ms .

    habr.com/ru/companies/otus/art

    #JSONлоги #структурированное_логирование #Python #FastAPI #logging #request_id #trace_id #обработка_ошибок #мониторинг #производительность

  6. Тенденции и тренды Python разработки

    Как быть востребованным Python разработчиком? Какие технологии нужно знать, чтобы легко найти работу? Какие библиотеки и фреймворки уходят в закат и перестают пользоваться популярностью? На все эти вопросы вы получите ответ в этой статье. Цель статьи: развеять мифы относительно реального применения различных технологий, библиотек и фреймворков в коммерческой Python разработке. После чтения статьи вы научитесь принимать верные решения относительно изучения той или иной технологии, чтобы всегда оставаться востребованным разработчиком. Последние 3 года я веду свой блог и активно общаюсь с Python разработчиками. И это помогает мне делать выводы относительно рынка труда более рационально, чем я делал в начале своей карьеры. Надеюсь, что этот материал даст тебе, дорогой читатель, пищу для размышления. В этой статье я часто упоминаю слово «актуальность». Под актуальностью я имею в виду, что конкретная технология используется достаточно большим количеством разработчиков. Сегодня мы будем говорить преимущественно о таких гигантах, как Django, FastAPI и Flask, а также затронем не менее важные библиотеки: для работы с базами данных, тестирования, сборки проектов. Поговорим о таких противостояниях, как uv vs poetry, pytest vs unittest и других. В общем, будет интересно. Усаживайтесь поудобнее и погнали! Вы, скорее всего, встречались с кардинально противоположными мнениями: "Django умер, да здравствует FastAPI", "Сейчас на FastAPI уже не пишут, встречай LiteStar", "Вообще на FastAPI особо ничего не пишем, только на Django".

    habr.com/ru/articles/1051682/

    #fastapi #flask #django

  7. If you use #FastAPI in #Python, comments on github.com/fastapi/fastapi/dis are welcome - they need to "gather community feedback" to swap to a maintained dependency.

  8. Как за 5 недель построить рекомендательную систему в TravelTech: Kafka и MongoDB вместо Feature Store

    Привет! Меня зовут Кристина, я MLOps-инженер в Туту. Занимаюсь тем, что помогаю рекомендательным системам добраться до прода со всеми компромиссами, горящими дедлайнами и новыми идеями. Эта статья — про один из таких запусков. В идеальном ML-мире запуск рекомендаций выглядит примерно так: полгода проектируют хранилище признаков (Feature Store), настраивают, откуда и как берутся данные, гоняют тяжёлые расчёты фичей и моделей, а отдельная команда следит, не деградирует ли модель из‑за изменений в данных. В реальном бизнесе у тебя есть 5 недель до старта высокого сезона, два инженера, DS и задача: сделать так, чтобы пользователь, который купил билет, сразу увидел релевантный отель. Рассказываем, как мы собрали работающую RecSys v1 на привычном стеке: Kafka, MongoDB, ClickHouse. При этом мы сознательно отказались от перфекционизма ради скорости. Инженерный вызов здесь не в масштабе и не в алгоритмах, а в контексте. Cross-sell в travel — это не «похожие товары». Пример Пользователь купил билет Москва → Сочи на 10–17 июля: значит, нужно показать отели именно в Сочи, именно на эти даты. Коллаборативная фильтрация без контекста поездки — «похожие пользователи → похожие отели» — не знает ни город, ни даты, ни то, что заказ только что оплачен и его ещё нет в DWH. Нужен подход, где контекст конкретной поездки — куда, когда, с кем — задаётся явно до ранжирования. «Правильный» путь — Feature Store и полноценная ML-платформа, занял бы 4–6 месяцев. Бизнесу нужно было проверить гипотезу на живом трафике. Мы собрали v1 на том, что уже работало в проде, с некоторыми компромиссами и без иллюзий насчёт идеальной архитектуры.

    habr.com/ru/companies/tuturu/a

    #рекомендательные_системы #mlops #kafka #clickhouse #feature_store #fastapi #catboost #travel_tech #mongodb

  9. RSS вырос до 3 ГБ, а tracemalloc показывает 180 МБ: как найти остальные 2,8

    RSS растёт к лимиту контейнера, tracemalloc показывает прежние 180 МБ, а gc.collect() ничего не меняет. Разберём, как в такой ситуации отделить утечку Python-объектов от нативных аллокаций и удержания памяти системным аллокатором — и понять, где именно искать причину до OOMKilled . Разобраться с памятью

    habr.com/ru/companies/otus/art

    #python #утечки_памяти #сборщик_мусора #профилирование_памяти #FastAPI #tracemalloc #RSS #CPython #memray

  10. restmesh: a simple Meshtastic REST API

    youtube.com/watch?v=iHP0RuHrN70

    restmesh is a Meshtastic-related REST API. You can use it for important and critical system notifications.

    - 💻 Source code (GitHub): github.com/frnmst/restmesh
    - 🐍 PyPI (Python package): pypi.org/project/restmesh/

    #meshtastic #lora #fastapi #rest

  11. And done. My admin tools now all run gRPC. The REST based server (FastAPI) is now only used by a few older versions of the app and will probably stay running for some years.

    I even run a pretty obsolete version of Flask that was the first REST backend. Been doing only minor security updates for a couple of years on it. I should really take it down, the app version that uses this server is over three years old by now.

    #grpc #rust #fastapi #flask #rest

  12. Как я настроил безопасное шифрование данных для сайта с помощью протокола HTTPS и SSL/TLS сертификата

    Представим что у вас есть свой сайт запущенный на VPS на голом HTTP, также вы уже купили домен и связали его со своим IP-адресом. Но спустя время вы решили, что не хотите, чтоб весь трафик между клиентами и сервером был виден любому желающему. Вспомнили, что есть протокол HTTPS, который по сути обычный HTTP, но на 5 и 6 уровне работает протокол SSL/TLS, который занимается шифрованием и аутентификацией. Дело осталось за малым, перевести сайт с HTTP на HTTPS.

    habr.com/ru/articles/1068204/

    #python #https #proxy #networking #FastAPI #middleware #reverseproxy #reverse_proxy

  13. Как я перенёс проверку цен с VPS на компьютеры пользователей — и зачем всё-таки оставил сервер

    Сначала PriceTrack проверял страницы маркетплейса на VPS. Селекторы были корректными, но сервер вместо карточек товара получал 403. В итоге я перенёс браузер и извлечение данных на компьютеры пользователей, а сервер оставил управляющим контуром. В статье рассказываю, как устроена эта архитектура, зачем понадобились базовый профиль и локальный рецепт и какие проблемы появились с фоновыми проверками, треем и несколькими аккаунтами.

    habr.com/ru/articles/1067564/

    #архитектура_ПО #desktopприложение #Python #FastAPI #Playwright #парсинг #маркетплейсы #локальная_обработка #распределённая_система #Windows

  14. FastAPI and Flask both get a Python API running fast, but they diverge under load. FastAPI is async and API-first, so it holds up when you're serving heavy concurrency or ML inference. Flask stays minimal and synchronous — ideal for simple apps and prototypes. The real choice is concurrency vs simplicity.

    Full comparison: reliasoftware.com/blog/fastapi

    #Python #FastAPI #WebDev

  15. Как меня достало руками создавать одни и те же файлы в Python-проектах — и я написал crt

    Сколько раз вы вручную создавали src/ , models/ , services/ , .gitignore ? Меня это достало, и я написал crt — одна команда вместо пятнадцати минут рутины. Файлы, вложенные папки, целые проекты по шаблону (FastAPI, React, Telegram-бот) — и не пустые файлы, а готовый к работе скелет. Свой архитектурный стандарт? Сохрани как шаблон и делись с командой. pip install crtfiles — и рутина, на которую уходили минуты, останется в прошлом. Смотреть, как это работает

    habr.com/ru/articles/1066782/

    #crtfiles #генерация_файлов #шаблоны_проектов #FastAPI #React #CLIинструменты #Python #автоматизация_разработки #структура_проекта #crt

  16. EDIT : c'est bon, j'ai eu suffisamment de retours, plus besoin de partager, merci tout le monde !

    Hello le Fédi des #devWeb !
    Je cherche à recruter une presta sur un outil d'aide à la décision développé dans le cadre d'un projet de recherche publique.

    L'outil est ici : outil-cafe.fr
    Et le code là : codeberg.org/tfardet/CAFE (c'est #Vite et #preact pour le front et du python avec #FastAPI pour le back)

    Il y aurait trois choses principales que j'aimerais faire (rangées par priorité décroissante) :

    1. passer le site en multilingue pour avoir une version en anglais

    2. supprimer tailwindcss pour avoir du CSS propre à travers le site

    3. limiter le contenu qui dépend de preact, en transformant une partie des conteneurs react en template html, de sorte que la majeure partie de la page d'accueil et les pages support (doc, FAQ...) n'ait pas besoin de javascript pour charger

    La priorité très claire, pour moi c'est vraiment le point 1, donc je cherche avant tout une personne qui puisse travailler là-dessus, les autres points sont appréciés mais pas centraux.
    Je précise également que je veux du code "à l'ancienne", garanti sans IAg 😉
    Côté deadline, il faut nécessairement que ce soit avant la fin de l'année parce que sinon mes sous repartent...

    #jeRecrute #getFediHired #presta #prestation #i18n #internationalization #webDev

  17. Как я написал свой SMTP‑сервер, чтобы не пропускать сообщения заказчиков с фриланс‑бирж

    Я фрилансер, и я ненавижу мониторить биржи. FL, Kwork, Freelance, куча Telegram‑каналов — каждое утро одна и та же рутина. Открываешь вкладку, обновляешь, листаешь, понимаешь что всё мимо, переходишь на следующую. Короче, бесконечная петля. Подсчитал как‑то — два‑три часа в день уходит не на работу. На обновление страниц. Решил автоматизировать. Написал агрегатор, который собирает заказы с четырёх площадок в единую ленту с фильтрами, присылает уведомления в Telegram и пересылает ответы заказчиков из бирж прямо в чат. Под капотом Python 3.13, FastAPI, Vue 3, PostgreSQL. Всё крутится в одном asyncio event loop.

    habr.com/ru/articles/1064840/

    #ython #asyncio #smtp_сервер #фриланс #парсинг_сайтов #fastapi #обход_защиты #telegram_бот #автоотклик #разработка

  18. restmesh: A stateless thread-safe REST API for Meshtastic

    You can also use it for automation via Apprise (mirrors on Codeberg, Framagit and personal instance)

    framagit.org/frnmst/restmesh
    codeberg.org/frnmst/restmesh

    #meshtastic #lora #fastapi

  19. Working on adding new features to a #FastAPI service at work, that if we have used #Django the static files would have handled it smoothly.
    But hey, they wanted to go with what was *cool* at the time. And here we are.

  20. Qué fastidio eso de los dependabots y qué mal hechas las bibliotecas para #nestjs y #react prácticamente todas las semanas hay vulnerabilidades, por lo que veo #fastapi de #python es mucho más robusto

  21. Seguimos estudiando #python con #fastapi no recordaba que se puede hacer algo similiar a lo que uno hace en #javascript con el ...

  22. Levantado #fastApi en el portátil, al parecer #ubuntu2404 tiene el #python demasiado actualizado pero con un docker compose quedó listo

  23. Категории как данные: EAV-каталог для доски объявлений на FastAPI + SQLModel

    Меня зовут Дмитрий Бабчук, я делаю О’Полку — доску объявлений: авто, недвижимость, электроника, одежда, услуги. Проект пишем небольшой командой, стек — FastAPI + SQLModel + PostgreSQL 16 на бэке и Next.js 14 (App Router) на фронте. В какой-то момент любой каталог-агрегатор упирается в один и тот же вопрос: как хранить характеристики, если у автомобиля это «пробег, коробка, привод», у кроссовок — «размер, сезон», а у сплит-системы — «мощность, площадь охлаждения»? У каждой категории свой набор полей, их сотни, и они постоянно меняются. Ниже — как мы решили это через EAV, где это выстрелило, а где отдаёт болью. Будет код из боевого репозитория.

    habr.com/ru/articles/1062104/

    #доски_объявлений #fastapi #SQLModel #postgresql