При старті застосунок відкриває N з'єднань. Кожен запит бере з'єднання з пулу, використовує і повертає назад. Якщо всі з'єднання зайняті — запит чекає або отримує помилку timeout.
PHP-FPM + MySQL: кожен воркер має свій пул. Для централізованого пулингу між воркерами використовують PgBouncer (PostgreSQL) або ProxySQL (MySQL).