Creating a new connection for each user can be time consuming (often requiring multiple seconds of clock time), in order to perform a database transaction that might take milliseconds. Opening a connection per user can be unfeasible in a publicly-hosted Internet application where the number of simultaneous users can be very large. Accordingly, developers often wish to share a "pool" of open connections between all of the application's current users.
comments powered by Disqus
c3p0 is an easy-to-use library for making traditional JDBC drivers "enterprise-ready" by augmenting them with functionality defined by the jdbc3 spec and the optional extensions to jdbc2. It provides (DriverManager-based) JDBC drivers with JNDI-bindable DataSources, including DataSources that implement Connection and Statement Pooling, as described by the jdbc3 spec and jdbc2 std extension.
SQL Relay is a persistent database connection pooling, proxying and load balancing system for Unix and Linux supporting ODBC, and all major databases. It has APIs for C, C++, ODBC, Perl, Perl-DBI, Python, Python-DB, Zope, PHP, Ruby, Ruby-DBI, Java, TCL and Erlang, drop-in replacement libraries for MySQL and PostgreSQL clients.
Vibur Object Pool is a general-purpose concurrent Java object pool which provides both validating and non-validating pool implementations. The pool is built entirely using standard Java concurrency utilities, does not use any synchronized blocks/methods, and does not have any external dependencies. The pool is an excellent choice for pooling/caching of expensive to create Java objects such as database (or any other) socket connections and similar.
Hector is a high level Java client for Apache Cassandra. Apache Cassandra is a highly available column oriented database. Hector provides Object oriented interface, Failover, Connection pooling, JMX, Basic Load Balancing and lot more.
Vibur DBCP is a concurrent, fast and fully-featured JDBC connection pool based on Java dynamic proxies. It supports a fairness parameter, statement caching, SQL queries logging, and Hibernate integration, among other features.
pgpool-II is a middleware that works between PostgreSQL servers and a PostgreSQL database client. It supports connection pooling, Using the replication function enables creating a realtime backup on 2 or more physical disks, so that the service can continue without stopping servers in case of a disk failure, Load balance the queries, It can execute queries in parallel to multiple servers.
A Java-based database connection pooling utility, supporting Time-based expiry, Statement caching, Connection validation, and easy configuration using a pool manager.
This is an alternative C driver for MongoDB, with slightly different goals than the official one. libmongo-client is meant to be a stable (API, ABI and quality alike), clean, well documented and well tested shared library, that strives to make the most common use cases as convenient as possible. It has support for connection pooling, ReplicaSet support, with support for automatic reconnecting and discovery and lot more.
Proxool is a Java connection pool. It transparently adds connection pooling to your existing JDBC driver. The performance of database connections could be monitored. It's easy to configure using the JDBC API, XML, or Java property files. It complies with the J2SE standards.