数据库连接池参数
本页列出并介绍 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。
◦ 有效值:TOMCAT 或 HIKARICP。
◦ 默认值为 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
• 最常见的参数:
◦ 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 超时,则将使用超时。
如果 Driver 和 URL 特性不为空,则会将数据库配置视为正确或完整。
优先级如下所示:
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