数据库连接池参数
本页列出并介绍 Codebeamer 21.09 版本和 22.04 版本中的可用连接池参数。
仅限 Codebeamer 21.09 版本
* 
以下变量在 Codebeamer 22.04 版本中不可用。如果打算从 22.04 版本开始使用这些参数,请参阅下一部分。
CB_application_database_pool_max_active
应用程序数据库池的最大启用连接数。默认值:35。
CB_application_database_pool_max_idle
应用程序数据库池的最大空闲连接数。默认值:15。
CB_application_database_pool_min_idle
应用程序数据库池的最小空闲连接数。默认值:10。
CB_quartz_database_pool_max_active
quartz 数据库池的最大启用连接数。默认值:35。
CB_quartz_database_pool_max_idle
Quartz 数据库池的最大空闲连接数。默认值:15。
CB_quartzdatabase_pool_min_idle
Quartz 数据库池的最小空闲连接数。默认值:10。
* 
"CB_quartzdatabase_pool_min_idle" 中有一个已知的拼写错误,这将在下一个版本中进行更改。
无法通过环境变量设置连接超时。
自 Codebeamer 22.04 版本起
HikariCP 作为一种新型连接池引入,因此可以切换池类型:
CB_DATABASE_POOL_TYPE
有效值:TOMCATHIKARICP
默认值为 TOMCAT
将支持适用于连接池类型的所有参数,且可通过环境变量进行设置。
要使用的模式:CB_[database-provider]_pool_[parameter]CB_[database-provider}_pool_quartz_[parameter]
[database-provider] - 数据库提供者的名称:tomcat 或 hikaricp
[parameter] - 要设置的参数的名称。
示例 #1
Tomcat CP 提供一个名为 'maxActive' 的参数。
要设置此参数,可使用下列环境变量:
CB_tomcat_pool_maxActive
CB_tomcat_pool_quartz_maxActive
示例 #2
HikariCP 提供一个名为 'maximumPoolSize' 的参数。
要设置此参数,可使用下列环境变量:
CB_hikaricp_pool_maximumPoolSize
CB_hikaricp_pool_quartz_maximumPoolSize
连接池特定参数
请参阅以下部分中适用于 Tomcat 和 HikariCP 的连接池特定参数。
Tomcat
有关 Tomcat 连接池的详情,请访问:https://tomcat.apache.org/tomcat-9.0-doc/jdbc-pool.html#System_Properties
最常见的参数:
CB_tomcat_pool_maxActive
应用程序数据库池的最大启用连接数。默认值:35。
CB_tomcat_pool_maxIdle
应用程序数据库池的最大空闲连接数。默认值:15。
CB_tomcat_pool_minIdle
应用程序数据库池的最小空闲连接数。默认值:10。
CB_tomcat_pool_quartz_maxActive
quartz 数据库池的最大启用连接数。默认值:35。
CB_tomcat_pool_quartz_maxIdle
Quartz 数据库池的最大空闲连接数。默认值:15。
CB_tomcat_pool_quartz_minIdle
Quartz 数据库池的最小空闲连接数。默认值:10。
Quartz 超时:
CB_tomcat_pool_quartz_jdbcInterceptors=org.apache.tomcat.jdbc.pool.interceptor.QueryTimeoutInterceptor(queryTimeout=[timeoutInSec])[timeoutInSec] 更改为所需值 (秒)。
Codebeamer 所用的默认值:
defaultAutoCommit: true
defaultReadOnly: false
defaultTransactionIsolation: READ_COMMITTED
initialSize: 0
logAbandoned: false
maxActive: 35
maxIdle: 15
maxWait: 60000
minEvictableIdleTimeMillis: 300000
minIdle: 10
removeAbandoned: false
removeAbandonedTimeout: 300
testOnBorrow: true
testOnReturn: false
testWhileIdle: false
timeBetweenEvictionRunsMillis: 60000
validationQuery: SELECT 1
validationInterval: 30000
validationQueryTimeout: 2
HikariCP
最常见的参数:
CB_hikaricp_pool_minimumIdle
应用程序数据库池的最小空闲连接数。默认值:35。
CB_hikaricp_pool_maximumPoolSize
应用程序数据库池允许达到的最大大小,包括空闲连接和使用中连接。默认值:35。
CB_hikaricp_pool_quartz_minimumIdle
Quartz 数据库池的最小空闲连接数。默认值:35。
CB_hikaricp_pool_quartz_maximumPoolSize
quartz 数据库池允许达到的最大大小,包括空闲连接和使用中连接。默认值:35。
Quartz 超时:
CB_hikaricp_pool_quartz_connectionTimeout=[timeoutInMs][timeoutInMs] 更改为所需值 (毫秒)。
Codebeamer 所用的默认值:
autoCommit: true
connectionTestQuery: SELECT 1
connectionTimeout: 60000
idleTimeout: 300000
initializationFailTimeout: 0
keepaliveTime: 0
leakDetectionThreshold: 6000
minimumIdle: 35
maximumPoolSize: 35
maxLifetime: 1800000
poolName: ApplicationPool
readOnly: false
registerMbeans: true
transactionIsolation: TRANSACTION_READ_COMMITTED
validationTimeout: 2000
* 
如果设置的参数不适用于所选的连接池类型,则数据源可能无法初始化。
自 Codebeamer 22.04-SP2 版本起
超时和 Quartz 超时可以单独配置。如果未配置 Quartz 超时,则将使用超时。
如果 DriverURL 特性不为空,则会将数据库配置视为正确或完整。
优先级如下所示:
1. 环境变量 - 如果配置正确,则将使用此项。
2. 配置文件 - 如果配置正确,则将使用此项。
* 
如果两者都不正确,则应运行安装模式。
配置相同数据库示例
1. 环境变量:
-DCB_database_JDBC_Driver=org.postgresql.Driver
-DCB_database_JDBC_ConnectionURL=jdbc:postgresql://localhost:5432/codebeamer_master
-DCB_database_JDBC_Username=user
-DCB_database_JDBC_Password=pass
-DCB_database_JDBC_Timeout=1000
-DCB_database_JDBC_Quartz_Timeout=2000
-DCB_database_JDBC_PasswordStorageType=ENCRYPTED
-DCB_DATABASE_POOL_TYPE=TOMCAT
2. 配置文件:
database.driver=org.postgresql.Driver
database.connectionURL=jdbc:postgresql://localhost:5432/codebeamer_master
database.username=user
database.password=pass
database.timeout=5000
database.quartzTimeout=6000
database.connectionPoolType=TOMCAT
database.passwordStorageType=ENCRYPTED
另请参阅:SQL 数据库超时
这对您有帮助吗?