Go back to the English version of the documentationData Virtualization中的并发查询缓慢或失败
Data Virtualization中的并发查询缓慢或失败
Last updated: 2024年11月26日
Data Virtualization提供连接池,当连接池满时,性能会受到负面影响。
症状
并发查询可能缓慢或失败的原因有很多种。 例如,当连接池变满时。 在这种情况下,Data Virtualization日志包含Reached max pool size警告,如以下示例中所示。
2021-04-13 03:06:27.541~616290520 DatabaseConnector ---------------> ******* DB Connections checker:
Reached max pool size: 20, for url: jdbc:derby://172.30.217.136:6415/gaiandb6415;ssl=off;create=true - waiting 600000ms
解决问题
要解决这个问题,请增加Data Virtualization配置参数 "MAX_POOLSIZES或 "MAX_DS_POOLSIZES。
- MAX_POOLSIZES 是节点间连接的最大池大小。
- MAX_DS_POOLSIZES 是数据源的最大池大小。
要检查当前Data Virtualization配置参数值,请运行以下查询。
select * from dvsys.listconfig where id = 'MAX_POOLSIZES'
或
select * from dvsys.listconfig where id = 'MAX_DS_POOLSIZES'
要修改参数,请使用 dvsys.setconfigproperty
存储过程,如以下示例中所示。
call dvsys.setconfigproperty('MAX_POOLSIZES', 'nn', '',?,?)
或
call dvsys.setconfigproperty('MAX_DS_POOLSIZES', 'nn', '',?,?)
注: 将
'nn'
参数设置为大于当前值的值。 在设置 MAX_DS_POOLSIZES时,请记住远程数据源支持的最大允许连接数。