Java Database Connectivity (JDBC) and LDAP datastores use connection pooling to improve the performance and efficiency of communicating with external systems. For optimal performance, a number of connections are required to handle most or all the requests in parallel.
Connection pools improve efficiency by maintaining persistent connections to the JDBC or LDAP server preventing the expense of creating the connection on demand. Connection pools also allow more control over the load placed on the back-end server. It might not be necessary to have a connection available for every concurrent request received by the server, but having too few available will cause requests to wait when accessing JDBC and LDAP resources.
configuring connection pools to JDBC or LDAP datastores:
Datastore type Configuration steps Configuring connection pools to JDBC datastores
- Go to , and select the applicable JDBC datastore.
- Go to .
- On the Advanced Database Options window:
- Set the Minimum Pool Size value to 50% of the maxThreads value.
- Set the Maximum Pool Size value to between
75% and 100% of the maxThreads value, subject
to the capability of the back-end database server.Remember: The maxThreads value is defined in the <pf_install>/pingfederate/etc/jetty-runtime.xml file. For more information, see Tuning the server thread pool).
Configuring connection pools to LDAP datastores
- Go to , and select the applicable LDAP datastore.
- Go to the .
- Set the Minimum Connections value to 50% of the maxThreads value.
- Set the Maximum Connections value to between 75% and 100% of the maxThreads value, subject to the capability of the back-end database server.
- For a clustered PingFederate environment, replicate the changes to all engine nodes on the window.