Jboss EAP 6.2 连接池中的可用计数正在减少

Jboss EAP 6.2 连接池中的可用计数正在减少

1.我们有一个 J2EE 应用程序,使用在 Jboss EAP-6.2 上运行的 Servlets 和 JSP,并使用 SQL 服务器数据库。

2.在用户数为 20 的 UAT 系统上一切正常,但是当我们将同一应用程序移动到用户数超过 80 的生产系统时,我们遇到了 Jboss 中有关连接池数量的问题。此数量持续减少,8-10 小时后,用户无法登录系统,因此我们需要通过单击“配置文件”选项卡中“数据源”部分中的“刷新”按钮手动刷新连接池。

3.我们检查没有连接泄漏,因为我们已经在 Finally{ } 部分关闭了所有数据库连接。

4.我们还增加了STANDALONE.XML文件中的最大-最小池大小,并添加了一些RedHat站点推荐的验证标签。请参阅附件。

问题- 有没有什么方法可以让我们自动执行 Jboss Adminstrator 控制台上的 Flush 按钮功能,以便自动销毁空闲连接。

附件-连接池的Jboss控制台视图。 在此处输入图片描述

在此处输入图片描述

答案1

好的,如果您只是想定期刷新池,首先创建一个包含以下内容的文件(例如,commands.cli):

/subsystem=datasources/data-source=ibpmprod/:flush-idle-connection-in-pool()
/subsystem=datasources/data-source=ibpmprod/:flush-all-connection-in-pool()

然后每次你想要执行刷新时使用cli:

${JBOSS_INSTALLATION_DIR}/bin/jboss-cli.sh -c --file=commands.cli

您应该检查 flush-idle 或 flush-all 是否更适合您的需要,当然您可以对其进行 cronify 以便它按照您需要的频率/时间运行。

相关内容