Rails 2.2 now supports database connection pooling. When connections are "pooled," a number of database connections stay open and ready for queries. As Rails receives HTTP requests and makes database queries, it grabs an open database connection from the pool, makes its query and returns the connection to the pool.
Database connection pooling gives you better control over how Rails interacts with the database, as well as a small performance boost since Rails doesn't have to connect to the database at each request. When connections are pooled, you get to control exactly how many concurrent database connections can exist, as well as the timeout Rails will wait when requesting a connection from the pool. Without a mechanism like this, a sudden surge in requests can hammer your database, bringing everything to a halt. With connection pooling, some requests might not get through, but at least some will.

