Infrastructure
PgDog routes Postgres session state through a Rust proxy
- Category: Infrastructure
- Status: discussion
- Sources: PgDog writeup, HN discussion
- Summary: The PgDog project published a post on why it built another Postgres connection pooler. PgDog is written in Rust on the Tokio runtime and parses SQL to track per-client session state, so that
SETstatements andLISTEN/NOTIFYkeep working through transaction pooling, which PgBouncer-style poolers drop. It handles each client as an async task across cores rather than sharding pools across separate processes, and adds load balancing and sharding. The post cites pooling at 2 million queries per second in production deployments. - Why it matters: Preserving
SETandLISTEN/NOTIFYunder transaction pooling removes two common reasons teams cannot put a pooler in front of Postgres.