IBM WAS:最大并行数据库连接

时间:2013-09-22 07:20:24

标签: java websphere data-warehouse pool ibm-was

我有一个用Java / Java EE开发的Web应用程序连接到后端的仓库。 我们将IBM WAS作为应用程序服务器,并在其中定义了用于数据库连接的数据源。 连接池已设置为最大池大小为30。 有几次数据库查询最多需要1-2分钟,因此用户会在前端等待。

当40个不同的并发用户在1-2分钟内访问后端运行查询的屏幕时会发生什么情况。

  1. 根据WAS设置,最多可以有30个连接 DB,对吧?
  2. WAS将等待数据库连接完成 处理并返回到池的连接;所以可以分配 到队列中的下一个请求?

2 个答案:

答案 0 :(得分:0)

不幸的是,我无法回答WebSphere在这种情况下的工作方式,但您可以尝试使用DB的延迟函数模拟您的查询:

TSQL:

--wait for 1 minute
WAITFOR DELAY '00:01'

甲骨文:

DBMS_LOCK.sleep(seconds => TIME_);

等等。

然后您可以使用apache jmeter(http://jmeter.apache.org/)来模拟用户请求。有各种要求,听众等。

Websphere管理控制台具有监视和调整部分,您可以在其中为数据源和http请求池活动配置自己的监视器。

这样我们调试了应用程序的瓶颈。

答案 1 :(得分:0)

在您的情况下结果将是:30连接将处于处理状态,其他10将处于等待状态。如果其中一个处理连接重新进入数据源,那么等待连接之一就会开始工作。