Если приложение открывает новое соединение с базой данных на каждый запрос, оно рано или поздно упрётся в стену — либо в лимит одновременных подключений на стороне БД, либо в задержки, которые накапливаются из-за постоянного handshake. Connection pooling решает эту проблему за счёт простой идеи: держать заранее открытый набор соединений и выдавать их по очереди, вместо того чтобы каждый раз устанавливать новое.
Подробнее →