Подготовка к интервью

Вопросы на собеседовании по FastAPI

135 вопросов по FastAPI с технических собеседований

135 вопросов 1634 компании 353 технологии

Что проверяют на интервью

Как устроена подборка

На странице собраны вопросы по FastAPI — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: backend, api, fastapi.

Каталог

Результаты поиска

Найдено: 135
Лайвкодинг

Интеграция PostgreSQL с FastAPI‑приложением

Создайте пул PostgreSQL на время жизни приложения и выполняйте SQL в /menu через полученное из пула соединение. Не открывайте неограниченное число соединений и не блокируйте async-обработчик синхронным драйвером.

Читать ответ
Лайвкодинг

Вы хорошо объяснили проблему гонки и роль await. А как бы вы реализовали защиту этой составной операции с помощью асинхронного лока в FastAPI?

Создайте один общий asyncio.Lock для защищаемого состояния и поместите всю проверку и изменение внутрь async with lock. Новый Lock на каждый запрос не защитит ничего, потому что запросы не будут разделять блокировку.

Читать ответ
Теория

Эндпоинт на FastAPI обрабатывает запрос за 2 секунды из-за внешнего API. При 50 одновременных пользователях сервис начинает тормозить. Что будете проверять в первую очередь и как исправите?

Сначала проверю, не вызывается ли блокирующий HTTP-клиент внутри async def, а затем — ограничения пула соединений, timeouts и лимиты внешнего API. Две секунды I/O не должны последовательно блокировать весь event loop.

Читать ответ
Теория

В FastAPI два запроса одновременно меняют баланс одного счёта. Объясни, почему `await` между чтением и записью всё ещё создаёт гонку и какая операция изменения баланса должна быть атомарной.

await может передать управление другой задаче между чтением и записью. Оба запроса прочитают прежний баланс, а затем один результат затрёт другой; атомарной должна быть вся проверка и изменение состояния.

Читать ответ
Поведенческий

Как разработали сервис на FastAPI, Celery и RabbitMQ для нечёткого поиска и сверки внутренней базы с внешними источниками, полностью отказавшись от ручного аудита?

FastAPI принимает задания, Celery выполняет сверку, RabbitMQ доставляет задачи. Полный отказ от ручного аудита нельзя объявлять без подтверждённых требований и измерений качества конкретного проекта.

Читать ответ
Теория

Похоже, вы затрудняетесь с ответом. Можете рассказать, как обычно обрабатываете завершение фоновых задач в FastAPI?

Сначала различаю задачу внутри процесса и надёжную внешнюю очередь. Для каждой нужны наблюдаемый результат, обработка исключения и стратегия shutdown; простое создание coroutine не означает успешное выполнение.

Читать ответ
Лайвкодинг

В AsyncIO нужно атомарно уменьшить лимит в общем состоянии после await. Какой подход наиболее надёжен?

Наиболее надёжен последний вариант с учётом области состояния: атомарная операция Redis для нескольких workers либо asyncio.Lock для одного event loop. Проверка и уменьшение должны составлять одну критическую операцию.

Читать ответ