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

Что такое connection pool

Connection pool — это техника оптимизации, позволяющая переиспользовать уже установленные соединения с БД вместо создания новых для каждого запроса. Это снижает накладные расходы на установку соединения (TCP handshake, аутентификация и т.д.).

Пример с psycopg2 (PostgreSQL):

python
import psycopg2
from psycopg2 import pool

Создание пула

connection_pool = psycopg2.pool.SimpleConnectionPool(
minconn=1,
maxconn=10,
host="localhost",
database="test",
user="user",
password="password"
)

Получение соединения из пула

conn = connection_pool.getconn()
cursor = conn.cursor()
cursor.execute("SELECT * FROM users")
print(cursor.fetchall())

Возврат соединения в пул

connection_pool.putconn(conn)

text

Ключевые преимущества:
- Уменьшает латенси при частых запросах
- Контролирует максимальное число соединений
- Автоматически управляет жизненным циклом соединений

Популярные реализации: `DBUtils`, `SQLAlchemy`, `Django ORM` имеют встроенные пулы соединений.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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