Встречается на собеседованиях • сегодня

Почему может производиться лишний запрос в базу

Распространённые причины лишних запросов в БД: 1. **N+1 проблема** - когда для каждой сущности из списка делается отдельный запрос: ```java // Плохо: для каждого пользователя отдельный запрос за заказами List users = userRepository.findAll(); users.forEach(user -> { List orders = orderRepository.findByUser(user); // N запросов }); ``` 2. **Отсутствие кэширования** - одинаковые данные запрашиваются многократно. 3. **Ленивая загрузка (Lazy Loading)** в ORM - когда связанные сущности загружаются при обращении к ним. 4. **Неправильный выбор стратегии загрузки** - EAGER вместо LAZY или наоборот. 5. **Циклы в бизнес-логике**, где на каждой итерации идёт запрос. 6. **Отсутствие пагинации** при работе с большими наборами данных. 7. **Неоптимальные JOIN'ы** в запросах, приводящие к дублированию данных. Решение: использовать eager fetching, batch loading, кэширование, правильные стратегии загрузки и анализировать SQL-логи.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы