Как называется паттерн, при котором `Engine` создаётся один раз на приложение и управляет общим пулом соединений?

Это приложение-уровневое управление общим ресурсом, часто называемое singleton scope; сам Engine использует паттерн Object Pool для соединений. Это не обязательно Singleton как класс.

Короткий ответ

Что ответить на собеседовании

Это приложение-уровневое управление общим ресурсом, часто называемое singleton scope; сам Engine использует паттерн Object Pool для соединений. Это не обязательно Singleton как класс.

Подробный разбор

Ответ с пояснениями

Это приложение-уровневое управление общим ресурсом, часто называемое singleton scope; сам Engine использует паттерн Object Pool для соединений. Это не обязательно Singleton как класс.

Один Engine обычно создают на конфигурацию БД и используют повторно в пределах процесса. Его можно передавать через dependency injection, модуль или контейнер приложения, не реализуя специальный singleton-метакласс. Пул выдаёт соединения на время работы и возвращает их после освобождения. При нескольких процессах «один на приложение» не означает один общий объект в памяти всех процессов. Важно также не путать общий Engine с Session или активной транзакцией: их жизненный цикл обычно значительно короче.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее