Comparing Connection Poolers for PostgreSQL
summary
Compares pgpool-II, pgbouncer, odyssey, pgagroal and pgcat and shows which features actually work: authentication methods supported, TLS client/server gaps (pgagroal lacks server TLS), prepared-statement support in transaction pooling (pgbouncer and odyssey), lifetime limits and queuing (pgbouncer/pgcat/odyssey support them, pgagroal does not), multi-threading and sharding tradeoffs, and stability/package availability. Recommends pgbouncer: safe, well-documented for most uses, flags pgcat: Rust, sharding and load balancing as the most featureful newcomer, and notes odyssey: multithreaded, prepared statements but memory leaks.
AI-written summary · about
chapters (9)
- 0:00Introduction to PostgreSQL poolers
- 1:31What is a connection pooler
- 17:53Overview of PostgreSQL poolers
- 24:23Authentication and security features
- 28:14Pooling modes and configurations
- 35:01Feature comparison of poolers
- 37:28Monitoring and stability
- 42:32Recommendations and use cases
- 49:18Closing thoughts and Q&A
related talks
23mComparing Postgres connection pooler support for prepared statements
20mElephant by the pool: PostgreSQL connection poolers overview
51mConnection pooling routing and queueing with pgBouncer
46mOdyssey — a scalable connection pooler for PostgreSQL
46mPgBouncer Connection Pooling and Routing
53mPgBouncer: Present and Future
30mNew features of the Odyssey connection pooler
25mFollow my Leader connecting Postgres client applications after server failover
