PgBouncer: Present and Future
summary
PgBouncer is a lightweight C connection pooler (≈26,000 LOC) using libevent and libyajl, with 48 releases, 55 contributors and three active committers; it supports online reload/restart, 1.19 added out_db_name, show state and cancel-forwarding, and 1.19.1 fixes two rare crash bugs released today. Pools support session/transaction/statement modes; current design is single-threaded with an optional PAM thread and a multi-instance socket-reuse workaround for CPU scaling. Work in progress: prepared statements in transaction-pooling, LDAP, FIPS/OpenSSL updates, Python tests and other auth improvements.
AI-written summary · about
chapters (13)
- 0:00Introduction to PgBouncer
- 2:58Connection pooling goals
- 6:19PgBouncer design overview
- 10:17Project history and stats
- 16:23Recent releases and fixes
- 17:08PostgreSQL architecture basics
- 18:31Pool modes explained
- 21:45Configuration file overview
- 26:45Key configuration parameters
- 32:13Admin commands for management
- 38:16Monitoring and show commands
- 42:57Roadmap and future features
- 49:55Q&A session
related talks
46mPgBouncer Connection Pooling and Routing
51mConnection pooling routing and queueing with pgBouncer
44mPgBouncer and 20000 TPS at one node: advanced tuning, hacks and problem solving
42mDo it in SQL: pgbouncer_wrapper
20mElephant by the pool: PostgreSQL connection poolers overview
59mComparing Connection Poolers for PostgreSQL
23mComparing Postgres connection pooler support for prepared statements
25mFollow my Leader connecting Postgres client applications after server failover
