PgConf.Russia 2015 archive

Horizontal scaling with PL Proxy

In the era of cheap VPS and instant provisioning, it's often nice to be able to scale by adding new servers, rather than upgrading the hardware on the existing ones. If this talk, we'll show a way to spread application load across many machines, each running an independent PostgreSQL cluster, using an extension called PL/Proxy. We'll also explain how PL/Proxy works with its sibling project, a connection pooler called pgBouncer. We'll share lessons learned when running a production deployment of PL/Proxy and pgBouncer and we'll walk through some of the real-world scenarios like adding new partitions, rebalancing between existing ones, or zero-downtime upgrades of individual machines.