| Measurement |
Description |
Measurement Unit |
Interpretation |
| Initial_size |
Indicates the number of connections that were open at this pool's start-up. |
Number |
|
| Num_active |
Indicates the number of established connections in this pool that are in use currently. |
Number |
|
| Num_idle |
Indicates the number of idle connections in this pool. |
Number |
|
| Max_idle |
Reports the maximum number of idle connections that this pool can contain. |
Number |
When configuring a connection pool using the server.xml file, a maxIdle parameter is typically set. This measure reports the value set for the maxIdle parameter.
If this value is consistently close to or equal to the value of the Num_idle measure of a pool, then it means that there are too many idle connections in that pool. As idle connections are a resource drain, it is best to keep them at a minimum. So, you may want to reduce the maxIdle configuration of that pool. Doing so will ensure that the pool drops all idle connections in excess of the configured maxIdle value, thereby reducing the risk of excessive resource consumption.
|
| Min_idle |
Reports the minimum number of idle connections that should be present in this pool at any given point in time. |
Number |
Ideally, this value should be equal to or greater than the value of the Num_idle measure.
|
| Max_total |
Indicates the maximum number of established connections that this pool can contain. |
Number |
Ideally, the value of this measure should be greater than or equal to the sum of the values of the Num_active measure and Num_idle measure.
|
| DataSource_type |
Indicates the type of this pool. |
|
The values that this measure can report and their corresponding numeric values are listed below:
| Measure Value |
Numeric Value |
| DBCP |
0 |
| Tomcat JDBC |
1 |
| Druid |
2 |
| Hikari |
3 |
| C3P0 |
4 |
| BoneCP |
5 |
Note:
By default, this measure reports the Measure Values listed in the table above to indicate the data source type. In the graph of this measure however, the same is indicated using the numeric equivalents only.
|
| Per_idle |
Indicates the percentage of maximum connections that are actually idle in this pool. |
Percent |
If the value of this measure is over 50%, it implies that more than half of the maximum number of connections a pool can have are currently idle. While its good to have adequate idle connections in a pool, if there are too many idle connections, server resources may be unnecessarily drained. To avoid this, its best to limit the number of idle connections a pool can have using the maxIdle setting in the server.xml file.
|
| Per_active |
Indicates the percentage of maximum connections that are actively used in this pool. |
Percent |
If the value of this measure is close to 100%, it is cause for concern. This is because, it implies that there are hardly any idle connections in the pool. Without sufficient idle connections, a pool may not be able to service connection requests. As a result, applications may not be able to interact with the database backend, which in turn can adversely impact application performance. This is why, ideally, the value of this measure should be low.
|
| Avail_conn |
Indicates the percentage of maximum connections that are neither used nor idle. |
Number |
This measure is computed using the following formula:
Max_total (-) Num_active (-) Num_idle
|
| Per_avail_conn |
Indicates the percentage of maximum connections that are neither used nor idle. |
Percent |
This measure is the value of the Avail_conn measure expressed as a percentage.
|