tomcat数据库连接池在高吞吐量时速度慢

k2fxgqgv  于 2021-07-15  发布在  Java
关注(0)|答案(0)|浏览(274)

我在spring2.x中编写了soapwebservice,它连接到teradata并将结果返回给客户端。为了连接基于数据的连接,我使用tomcatjdbc连接池作为 DataSource .
在高峰时间(上午9点到下午6点),应用程序获得大约6万个事务请求。我观察到一些事务处于挂起状态,并在2-3分钟内返回响应。我怀疑某些事务处于等待状态,一旦池中的连接可用,就完成事务。
下面是的配置 DataSource .

<bean id="dataSource"   class="org.apache.tomcat.jdbc.pool.DataSource"
          destroy-method="close">
        <property name="driverClassName" value="com.teradata.jdbc.TeraDriver"/>
        <property name="url" >
            <util:constant static-field=" _DB_HOST"/>
        </property>
        <property name="username">
            <util:constant static-field=" DB_USER"/>
        </property>
        <property name="password">
            <util:constant static-field=" DB_PWD"/>
        </property>
        <property name="initialSize" value="1" />
        <property name="maxActive" value="50" />
        <property name="minIdle" value="0" />
        <property name="maxWait" value="-1" />
        <property name="minEvictableIdleTimeMillis" value="1000" />
        <property name="timeBetweenEvictionRunsMillis" value="1000" />

    </bean>

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource"/>
        <qualifier value="txnMngr"/>
    </bean>

// using JdbcTemplate to read the data from data base.

以下是我的问题:
基于我在应用程序中提到的负载,上面的配置有什么问题吗?
有什么方法可以监视数据库连接池的使用吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题