Что такое connection pool

Python Senior Без компании
Что такое connection pool
Ответы
Connection pool — это техника оптимизации, позволяющая переиспользовать уже установленные соединения с БД вместо создания новых для каждого запроса. Это снижает накладные расходы на установку соединения (TCP handshake, аутентификация и т.д.). Пример с `psycopg2` (PostgreSQL): ``` 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) ``` Ключевые преимущества: - Уменьшает латенси при частых запросах - Контролирует максимальное число соединений - Автоматически управляет жизненным циклом соединений Популярные реализации: `DBUtils`, `SQLAlchemy`, `Django ORM` имеют встроенные пулы соединений.