5 ошибок в FastAPI, из-за которых даже простой сервис начинает тормозить
Чаще всего FastAPI ругают не за фреймворк, а за код вокруг него. Есть наблюдение которое стоит проверить: узкие места обычно сидят в зависимостях, ORM и обработке I/O.
— Долгие синхронные функции внутри async-эндпоинтов. Если внутри запроса есть блокирующий вызов, event loop простаивает.
— Тяжёлые зависимости через Depends на каждый запрос. Сюда же относится лишняя сборка объектов и повторные обращения к БД.
— Логика в роуте вместо сервисного слоя. Когда в обработчике смешаны валидация, запросы и бизнес-правила, оптимизировать потом почти нечего.
Отдельно проверь сериализацию ответа. Pydantic удобен, но если отдавать огромные вложенные структуры без фильтрации полей, время уходит не на сеть, а на сборку JSON. Ещё один частый промах — использовать ORM без явного контроля количества запросов: один endpoint, а SQL-запросов внезапно десятки.
Если сервис “тормозит”, начинайте не с переписывания FastAPI, а с замера узких мест: I/O, количество запросов и синхронные куски в async-пути.
Python Web & Scripts — Django, FastAPI, скрипты
@python_web_scripts
5 ошибок в FastAPI, из-за которых даже простой сервис начинает тормозить
Этот пост опубликован в Telegram-канале Python Web & Scripts — Django, FastAPI, скрипты. Подписаться можно по ссылке: @python_web_scripts.