Ctrl K
Python · Senior · Теория

Расскажите про проблему N+1 запросов в Django ORM. Как вы её находите и какие средства ORM используете, чтобы её устранить?

~4 мин голосом

Как подойти

Проверяют, понимает ли кандидат, как ленивость QuerySet порождает лишние запросы, и умеет ли осознанно выбирать между select_related, prefetch_related, Prefetch, annotate и сужением полей. Ещё важно, как он ловит N+1 системно, а не по жалобам на медленную страницу.

Встречал этот вопрос на настоящем собесе?
Ответов0
Средний балл—
Сильных—
Тренировали0
Темы
Похожие вопросыDjango-монолит перестаёт справляться с ростом трафика. Как вы спроектируете его запуск в продакшене: сервер приложений, модель воркеров, их количество, работа с базой данных? MiddleСпроектируйте работу с PostgreSQL в нагруженном Python-сервисе на SQLAlchemy: десятки инстансов, в каждом несколько воркеров. Как организуете пулы соединений и жизненный цикл сессий? SeniorСтраница со списком заказов стала грузиться несколько секунд, и в логах вы видите сотни однотипных SQL-запросов на один HTTP-запрос. Что происходит и как будете это чинить? MiddleУ вас большой монолит на Django, и команда хочет переписать его на FastAPI ради асинхронности и производительности. Как вы будете принимать это решение и как проводили бы изменение? SeniorЧем Django отличается от FastAPI? Для каких проектов вы бы выбрали каждый из них? Junior

Ответь голосом

Интервьюер задаст этот вопрос и послушает. Думай вслух, проси подсказку, если нужно. Закончил — пауза или «Я ответил», через минуту здесь балл и какие пункты закрыты.

Войти, чтобы ответить

Лучше в наушниках · ~4 мин