Пул соединений обычно предоставляет клиентская библиотека, драйвер или ORM, а не сам FastAPI. Приложение управляет его жизненным циклом и пределами через настройки выбранного клиента.
Пул соединений — это фича FastAPI или чего-то другого? Откуда он берётся и как им управлять?
Пул соединений обычно предоставляет клиентская библиотека, драйвер или ORM, а не сам FastAPI. Приложение управляет его жизненным циклом и пределами через настройки выбранного клиента.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Пул соединений обычно предоставляет клиентская библиотека, драйвер или ORM, а не сам FastAPI. Приложение управляет его жизненным циклом и пределами через настройки выбранного клиента.
В SQLAlchemy пул связан с Engine; для async-движка используется совместимый асинхронный вариант. Настраивают размер, дополнительное расширение, время ожидания и проверку соединений по возможностям драйвера. Создавать Engine на каждый HTTP-запрос обычно не нужно. Сессии запросов закрывают, а общий пул освобождают при shutdown. Учитывайте, что каждый процесс приложения может иметь собственный пул, умножая нагрузку на базу.
Источник: docs.sqlalchemy.org.