Ответ 1
Объединение уровня транзакций поможет, если у вас есть приложения, в которых проводятся сеансы бездействия. PgBouncer не требует, чтобы сеансы были открыты и простаивали, он просто захватывает один, когда начинается новая транзакция. Эти незадействованные сеансы стоят только вам подключения pgbouncer, а не реального сеанса Pg бездействия, когда бэкэнд сидит вокруг, теряя память и накладные расходы на синхронизацию, ничего не делая.
Основная причина, по которой вы хотите, чтобы пул сеансов вместо пула транзакций заключался в том, что вы хотите использовать именованные подготовленные операторы, консультативные блокировки, прослушивание/уведомление или другие функции, которые работают на уровне сеанса, а не уровень транзакции.