lenec ru

Андрей Крылов

@andrey_krylov

с 18 февраля 2026 г.

Подписаться

Backend на Python, FastAPI.

12 постов 0 подписчиков 0 подписок 5 лайков

FastAPI dependency injection: рабочие паттерны и антипаттерны

FastAPI часто хвалят за систему зависимостей. И за дело: Depends — это, наверное, главная фича, которая делает фреймворк не просто «асинхронным Flask», а полноценным инструментом. Но чем больше…

470 10K
Андрей Крылов

Тестирование FastAPI с pytest: фикстуры для БД и httpx-клиент

Тестировать FastAPI вроде бы просто: TestClient, пара фикстур, запустил pytest. Но как только в проекте появляется БД, аутентификация, фоновые задачи и внешние клиенты — сразу всплывают вопросы. Где…

160 13K
Андрей Крылов

Connection pool в asyncpg и SQLAlchemy: как не положить базу

Connection pool — одна из тех вещей, которые работают, пока всё хорошо, и взрываются разом, когда плохо. Сервис тихо обслуживает 200 RPS, а потом приходит пик в 800, и Postgres начинает отдавать…

341 10K
Андрей Крылов

Pydantic v2 vs v1: что реально изменилось и как мигрировать

Команда долго сидела на Pydantic v1. Модели там работали, валидаторы прижились, никто не торопился что-то менять. А потом FastAPI начал намекать, что v1 — это уже legacy, и однажды ты приходишь…

480 17K
Андрей Крылов

Background tasks в FastAPI: когда хватает встроенного, а когда брать Celery

В FastAPI есть встроенный BackgroundTasks. Простой, удобный, всегда под рукой. И регулярно появляется вопрос: «А зачем тогда Celery, RQ, Dramatiq и прочие зоопарки? Можно ведь и так». Можно. До…

357 11K
Андрей Крылов

OpenAPI в FastAPI: настройка генерации, которая нравится фронтам

OpenAPI-схема в FastAPI генерируется бесплатно. Открыл /docs — и вот тебе Swagger UI. Замечательно, пока ты пишешь сам бэкенд. Но потом за неё берутся фронтендеры с генератором клиентов, и…

91 19K
Андрей Крылов

Переход с Django на FastAPI: чего ждать и где будет больно

Переезд с Django на FastAPI — это не просто смена фреймворка. Это смена философии: из тёплого монолита со встроенным ORM, админкой и middleware-ms ты попадаешь в минималистичный микрофреймворк, где…

482 16K
Андрей Крылов

uvicorn vs gunicorn vs hypercorn vs granian: что выбрать в 2026

На каждый питон-сервис рано или поздно встаёт вопрос: что запускать в проде. Был uvicorn в одиночку, стал uvicorn под gunicorn, кто-то ушёл в hypercorn, кто-то на granian. Картина запутанная,…

480 11K
Андрей Крылов

Кэширование в FastAPI: Redis-обёртка, которую можно повторно использовать

Кэш в API-сервисе — это та штука, которая кажется простой, пока ты её сам не написал. «Положи результат в Redis на 5 минут». Звучит элементарно. А потом начинается: ключи, инвалидация, сериализация,…

200 16K
Андрей Крылов

Alembic в реальной команде: миграции без конфликтов

Команда из пяти бэкендеров, две ветки уже неделю в ревью, и кто-то наконец мерджит свою. Через час прилетает второй мердж — и Alembic ругается на multiple heads. CI красный, продовая миграция стоит,…

231 13K
Андрей Крылов

SQLAlchemy 2.0 async: типичные ошибки и как их обойти

За последние два года я переписал три проекта на SQLAlchemy 2.0 в async-режиме и собрал почти полный набор граблей. Самое неприятное — поведение, которое в синхронной версии работало по умолчанию, а…

262 10K
Андрей Крылов

Observability в FastAPI: structured logs, метрики, tracing

Логирование и observability в Python-сервисе — это история, к которой большинство приходит постфактум. Сначала пишешь print, потом logging.info, потом ставишь Sentry, потом упирается во что-то в…

480 11K
Андрей Крылов