Skip to content
SPECIFICTION
Get listed

PgBouncer vs PgDoorman

PgBouncer

pgbouncer.org

PgDoorman

ozontech.github.io

Side by side

FigurePgBouncerPgDoorman
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYes—
macOS—Yes
LinuxYesYes
Self-hostedYesYes
Plans published11
Spec score · Database Proxy Software7.7 (#11)7.5 (#18)
AuthenticationDocumented authentication options include client certificates, SCRAM-SHA-256, LDAP, PAM, and HBA-based configuration.Documented authentication methods include MD5 or SCRAM passthrough, auth_query, PAM, JWT, Talos JWT, and pg_hba.conf access rules.
Prepared statementsIt can track protocol-level prepared statements in transaction and statement pooling when max_prepared_statements is non-zero.PgDoorman caches anonymous Parse messages so clients in a pool can reuse prepared backend state without application changes.
TLSThe installation documentation lists OpenSSL 1.0.1 or later as a build dependency for TLS support.TLS can be configured for client and backend connections, while seamless migration of TLS sessions during binary upgrades requires a Linux build with the tls-migration feature.

Plans

PgBouncer

  • PgBouncerFree

PgBouncer pricing →

PgDoorman

  • PgDoormanFree

PgDoorman pricing →

In their own words

PgBouncer

PgBouncer is a self-hosted connection pooler for PostgreSQL. It reuses server connections to lessen the performance cost of opening new ones, and offers session, transaction, and statement pooling. Statement pooling does not allow multi-statement transactions. PgBouncer can send connections to databases on different hosts, but it has no built-in multi-host load balancing or failover detection; DNS round-robin, external TCP load balancers, DNS changes, or external tools are described as alternatives. It can track protocol-level prepared statements in transaction and statement modes when max_prepared_statements is non-zero. Authentication options include client certificates, SCRAM-SHA-256, LDAP, PAM, and HBA-based configuration. The features page lists default memory needs of 2 kB per connection. PgBouncer is free, with source releases and references to native packages and RPM and Debian repositories. It runs on Linux and Windows; MinGW is the documented supported Windows build environment. Building requires Libevent 2.0 or later, pkg-config, and a C11-capable compiler; TLS support also requires OpenSSL.

Visit pgbouncer.org

PgDoorman

PgDoorman is a free, open-source, self-hosted PostgreSQL connection pooler written in Rust. It is described as a drop-in replacement for PgBouncer and Odyssey, and supports PostgreSQL 10 and newer on Linux or macOS. Listed capabilities include connection pooling, load balancing, and automatic failover; query routing is not supported. The pool coordinator enforces per-database connection caps and can reclaim idle capacity from pools with spare connections. Patroni-assisted fallback can direct new connections to another live cluster member during a switchover. Monitoring includes a Prometheus endpoint and an optional local diagnostic console for pool, latency, error, query, log, CPU, and memory information. Authentication includes MD5 or SCRAM passthrough, auth_query, PAM, JWT, Talos JWT, and pg_hba.conf rules. TLS is supported for client and backend connections. It can be built from source, installed from packages, or downloaded as a binary.

Visit ozontech.github.io