Connection pool
In software engineering, a connection pool is a maintained collection of connections so that the connections can be reused when a connection is needed.
Initiating new connections can be resource and time intensive. When using a connection pool, there is a collection of pre-established connections and an idle connection is used from the pool instead of establishing a new connection whenever a connection is needed.
Applications
There are a number of libraries available that implement connection pooling and related SQL query pooling, simplifying implementation of connection pools in database-intensive applications.
Connection pools can be configurable with restrictions on the numbers of minimum connections, maximum connections and idle connections to optimize the performance of pooling in specific problem contexts and environments.
Database support
A common application for connection pools are database connections.
Connection pooling is supported by IBM DB2,[1] Microsoft SQL Server,[2] Oracle,[3] MySQL,[4] and PostgreSQL.[5]