gpt4 book ai didi

apache-nifi - 如何配置 NiFi 的 DBCPConnectionPool 不保持空闲连接打开?

转载 作者:行者123 更新时间:2023-12-04 02:50:24 25 4
gpt4 key购买 nike

开箱即用,NiFi(至少从 1.8.0 开始)似乎为每个启用的 DBCPConnectionPool Controller 服务保持打开一个数据库连接。我有多个 DBCPConnectionPool Controller 服务配置为使用不同的选项访问同一台服务器,因此这很快就会增加到我的数据库服务器的有限数量的连接。我有一个每晚运行的预定工作流程。连接不需要处于事件状态,除非在很短的时间内处于事件状态。

环顾四周DBCPConnectionPool documentation ,似乎有Apache Commons-DBCP相关联的 Controller 服务配置选项BasicDataSource 参数,例如 minIdlemaxIdle,我认为在我的特定用例中它们都应该设置为 0。或者,我认为我可以将 maxConnLifetimeMillis 设置为甚至在分钟范围内的值并满足我的用例(不需要立即释放连接,而是在合理的时间段内) .

有没有办法在不修改 DBCPConnectionPool 代码的情况下传递这个选项? Commons-DBCP 是否会通过将这些选项设置为 NiFi DBCPConnectionPool Controller 服务配置上的动态属性来接受这些作为 JDBC 参数传递的选项?

最佳答案

从 1.8.0 开始的 NiFi keeps one connection per database open at all times因为它使用不清理连接的 Commons-DBCP 2.5.0 的默认配置。 timeBetweenEvictionRunsMillis 的 Commons-DBCP 默认值为 -1,这会导致空闲连接驱逐永远不会运行。

NiFi 1.8.0 没有 expose the Commons-DBCP configuration options有必要调整这些时间。

NiFi 1.9.0expose these settings, added in this commit .

关于apache-nifi - 如何配置 NiFi 的 DBCPConnectionPool 不保持空闲连接打开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53110163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com