HiveBrain v1.2.0
Get Started
← Back to all entries
patternsqlMinor

Confused about maximum connections in PostgreSQL

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
postgresqlmaximumconfusedaboutconnections

Problem

I am building a web application and I using PostgreSQL as the database management system.

The following page details the maximum connections setting:

  • https://www.postgresql.org/docs/9.5/static/runtime-config-connection.html.



I read about tuning on the following page

  • https://wiki.postgresql.org/wiki/Tuning_Your_PostgreSQL_Server



and it mentions


Generally, PostgreSQL on good hardware can support a few hundred connections.

Question

I am confused about what defines a "connection". Many web sites have thousands or more users and it seems if it can only support a few hundred connections at once, then significant horizontal scaling would be required. Are connections very short?...Meaning, if a user loads a page and it queries the database, does it open and close a connection before and after?

Solution

In a web application you use a connection pool that establishes a fixed amount of database connections that are then shared between all sessions in your web applications.

Even when a web application has thousands of concurrent users, it might only need as much as 50 database connections (if the connection pooling is done right).


Meaning, if a user loads a page and it queries the database, does it open and close a connection before and after?

No, you shouldn't do that. Opening and closing connections is a relatively expensive operation. The connection pool will typically keep the connections open - at least for a defined amount of time. Your application takes connections from the pool and returns them to the pool.

Context

StackExchange Database Administrators Q#162988, answer score: 4

Revisions (0)

No revisions yet.