eG Monitoring
 

Measures reported by JDBCConnPoolTest

Sufficient free connections should be available in the JDBC connections pools on a SAP web application server, so that applications deployed on the server are able to communicate with the database server without any interruption. If a connection pool runs out of free connections, then application-database interactions will be adversely impacted, thereby significantly degrading application performance. This is why, it is imperative that administrators continuously track the usage of JDBC connection pools on the SAP web application server, and proactively detect the shortage of free connections in any connection pool. The JDBCConnPoolTest test helps administrators in this mission!

This test monitors the usage of the standalone and application portal JDBC connection pools, and accurately pinpoints the connection pool that is being over-utilized and is hence running out of free connections. The test also accurately brings out how the absence of free connections is impacting application server performance, and provides useful pointers to how this contention can be cleared.

The measures made by this test are as follows:

Measurement Description Measurement Unit Interpretation
Used_Mgd_Conns Indicates the number of connections in this pool that are currently in use. Number  
Free_Mgd_Conns Indicates the number of unused managed connections in this pool. Number Ideally, the value of this measure should be high.

A consistent drop in the value of this measure is indicative of excessive usage of the pool, which may result in a serious contention for free managed connections. Many connection requests.
Max_Conns Indicates the maximum number of connections from a single datasource that this pool can have. Number If the value of this measure is very low, it means that the Maximum Connections parameter of the connection pool has been set very low. A very low value for this measure may cause the pool to rapidly run out of connections. Many connection requests will then end up waiting for a connection to be released to use it. This in turn may result in long-winding connection queues on the application server, which may eventually choke the server. This is why, it is important that the Maximum Connections parameter is set after careful thought. Set a higher value for this parameter if the applications need to connect multiple times to the database server, or if there are many clients working with the database server simultaneously.
Opened_Conns Indicates the number of connections opened per application. Number  
Waiting_for_Conns Indicates the number of connection requests that are waiting for connections to be released. Number A high value for this measure is a cause for concern, as it indicates that many requests are waiting for connections to be released. If the number of waiting requests increases steadily, the application server may choke.

The probable causes for a large number of waiting requests are as follows:

  • A low Maximum connections parameter setting; this may cause the pool to rapidly run out of connections. Many connection requests will then end up waiting for a connection to be released to use it. This in turn may result in long-winding connection queues on the application server, which may eventually choke the server. A high Maximum connections configuration may help reduce the number of waiting requests.

  • A high Maximum time to wait for connection configuration. This setting indicates the maximum time for which the clients will wait, if the Maximum connections setting is reached and there are no free connections. With a high wait time setting, requests from clients will wait longer, increasing the number of waiting requests. By reducing the Maximum time to wait for connection, you may be able to decrease the number of waiting requests.

Managed_Conns_Usage Indicates what percentage of the maximum connection capacity of this pool, is currently in use. Percent A low value is desired for this measure. A value close to 100% indicates that the pool is about to run out of free connections. This is a cause for concern. Under such circumstances, you may want to increase the Maximum connections configurations of the pool, so that the pool can accommodate more connections.
Timedout_Conn_Requests Indicates the number of failed connection requests in the last measurement period. Number