Class PoolingClientConnectionManager

  • All Implemented Interfaces:
    ClientConnectionManager, ConnPoolControl<HttpRoute>

    public class PoolingClientConnectionManager
    extends Object
    implements ClientConnectionManager, ConnPoolControl<HttpRoute>
    Manages a pool of OperatedClientConnection and is able to service connection requests from multiple execution threads. Connections are pooled on a per route basis. A request for a route which already the manager has persistent connections for available in the pool will be services by leasing a connection from the pool rather than creating a brand new connection.

    PoolingConnectionManager maintains a maximum limit of connection on a per route basis and in total. Per default this implementation will create no more than than 2 concurrent connections per given route and no more 20 connections in total. For many real-world applications these limits may prove too constraining, especially if they use HTTP as a transport protocol for their services. Connection limits, however, can be adjusted using HTTP parameters.