Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaEE显示连接池中剩余的连接数_Java_Jakarta Ee_Oracle11g_Oracle10g_Connection Pooling - Fatal编程技术网

JavaEE显示连接池中剩余的连接数

JavaEE显示连接池中剩余的连接数,java,jakarta-ee,oracle11g,oracle10g,connection-pooling,Java,Jakarta Ee,Oracle11g,Oracle10g,Connection Pooling,我的系统在连接池中遇到一些连接泄漏。我想定期列出一些连接池的统计数据,我该怎么做?例如,当前容量、活动连接高计数、连接总数计数、泄漏连接计数等 我正在使用javax.sql.DataSource从连接池中检索连接。但我找不到任何可以检索这些连接池信息的接口。有什么想法吗 我使用Oracle DB和JavaEE作为服务器端脚本。javax.sql.DataSource是一个接口,它只是抽象了一个数据源。它不涉及提供到它的池连接 连接池负责向数据库(数据源)提供池化的、可重用的连接 首先,您需要找出

我的系统在连接池中遇到一些连接泄漏。我想定期列出一些连接池的统计数据,我该怎么做?例如,当前容量、活动连接高计数、连接总数计数、泄漏连接计数等

我正在使用
javax.sql.DataSource
从连接池中检索连接。但我找不到任何可以检索这些连接池信息的接口。有什么想法吗


我使用Oracle DB和
JavaEE
作为服务器端脚本。

javax.sql.DataSource是一个接口,它只是抽象了一个数据源。它不涉及提供到它的池连接

连接池负责向数据库(数据源)提供池化的、可重用的连接

首先,您需要找出正在使用的连接池。连接池实现通常提供一种查询活动连接数等信息的方法

例如,Apache DBCP有一个作为连接池的类,它有一个用于此的方法:

BasicDataSource.getMaxTotal();
BasicDataSource.getNumActive();
BasicDataSource.getNumIdle();
BasicDataSource.getMinIdle();
BasicDataSource.getMaxIdle();
由于您提到您正在使用Oracle DB,您的连接池很可能是(Oracle JDBC驱动程序的一部分),它提供:

OracleOCIConnectionPool.getMaxLimit();
OracleOCIConnectionPool.getPoolSize();
OracleOCIConnectionPool.getActiveSize();
OracleOCIConnectionPool.getMinLimit();