Импорт заказов: незапущенная корутина и скрытые ошибки БД
Программа не запускает корутину main, а ошибки БД маскируются под успешный импорт. Дополнительно нужны корректные транзакции, идемпотентность и валидация заказов.
Читать ответПодготовка к интервью
Разбирайте реальные вопросы, сверяйтесь с подробными ответами и готовьтесь по технологиям и компаниям.
Проверьте, насколько резюме подходит выбранной позиции, и получите рекомендации по улучшению.
Каталог
Программа не запускает корутину main, а ошибки БД маскируются под успешный импорт. Дополнительно нужны корректные транзакции, идемпотентность и валидация заказов.
Читать ответПредусмотрите стабильный API, аутентификацию, tenant isolation, наблюдаемость, конфигурацию и управляемый lifecycle сервиса. Не все enterprise-сценарии требуют одинакового набора паттернов.
Читать ответНазначьте одному сервису владение read-моделью и договоритесь о публичном контракте её чтения. Общий Redis не должен превращаться в неформальную базу, куда каждый сервис пишет произвольные ключи.
Читать ответВнешний трафик обычно проходит через ограниченное число точек входа: gateway, ingress или reverse proxy. Внутренние сервисы взаимодействуют по приватным адресам, но тоже требуют проверки доступа.
Читать ответНазовите фактический framework последнего проекта и свою роль в его использовании. Если применялись оба, объясните, для каких сервисов и почему.
Читать ответВыполняйте независимые REST-вызовы конкурентно с ограничениями, отдельными таймаутами и единым бюджетом времени. Заранее определите, допускается ли частичный результат.
Читать ответСохраните состояние процесса и повторяйте упавший шаг идемпотентно. Для нескольких сервисов используйте saga с явно заданными компенсациями, а не попытку удержать одну общую DB-транзакцию.
Читать ответНет, брокер нужен не всегда. Синхронный HTTP/gRPC подходит для запроса с немедленным результатом, а сообщения — для развязки по времени, буферизации и независимой обработки.
Читать ответЗапрос проходит через middleware к роутингу, затем обработчик FastAPI разбирает вход и разрешает dependencies с валидацией параметров, после чего вызывает endpoint. Ответ идёт обратно через middleware.
Читать ответОпишите реальную интеграцию: назначение модели, формат API, авторизацию, таймауты, streaming и проверку результата. Отделите использование SDK от проектирования устойчивого сервиса.
Читать ответНе доверяйте предположению о быстром обновлении всех клиентов: изменение типа публичного amount ломает контракт. Сохраните старое поле и введите совместимое расширение либо новую версию API.
Читать ответВыберите вариант с устойчивым хранилищем статуса и проверкой повторов заданий. Память FastAPI-процесса теряется при рестарте и не разделяется автоматически между workers.
Читать ответ