Connection pooling
PostgreSQL does not highly prioritize making the act of connecting to the database one that happens quickly. Each connection requires starting a new process to talk to the client, a fairly expensive operation, and things such as the pg_hba.conf authentication implementation are optimized for security and flexibility even if this comes at the expense of speed. The presumption is that users will run things for a long time relative to how long it takes to connect.
When this isn't true, which can be the case for web applications in particular, connection pooling is one approach to reduce this overhead. The connection pool sits between your application and the database. It makes a fixed number of connections to the database, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access