liqunkukuli 2016-07-14 01:00 采纳率: 0%
浏览 1083

SSH双数据源运行一段时间 ,远程数据库连接卡死

<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd"
default-autowire="byName">

<bean id="dataSource_oracle" class="com.mchange.v2.c3p0.ComboPooledDataSource">

    <property name="driverClass" value="oracle.jdbc.driver.OracleDriver"></property>
    <property name="jdbcUrl" value="jdbc:oracle:oci:@AA"></property>
    <property name="user" value="zzgh"></property>
    <property name="password" value="zzgh"></property>
        <!--连接池中保留的最大连接数 -->
    <property name="maxPoolSize" value="200"></property>
    <!--连接池中保留的最小连接数 -->
    <property name="minPoolSize" value="5"></property>
    <!--初始化时创建的连接数,应在minPoolSize与maxPoolSize之间取值 -->
    <property name="initialPoolSize" value="10"></property>
    <!--隔多少秒检查所有连接池中的空闲连接,默认为0表示不检查 -->
    <property name="idleConnectionTestPeriod" value="30"></property>
    <!--最大空闲时间,超过空闲时间的连接将被丢弃 -->
    <property name="maxIdleTime" value="120"></property>
    <!--当连接池中的连接用完时,C3P0一次性创建新连接的数目 -->
    <property name="acquireIncrement" value="3"></property>
    <!--从数据库获取新连接失败后重复尝试获取的次数 -->
    <property name="acquireRetryAttempts" value="10"></property>
    <!--两次连接中间隔时间,单位毫秒 -->
    <property name="acquireRetryDelay" value="1000"></property>
    <!--连接关闭时默认将所有未提交的操作回滚 -->
    <property name="autoCommitOnClose" value="false"></property>
    <!--用以控制数据源内加载的PreparedStatement数量 -->
    <property name="maxStatements" value="0"></property>
</bean>





org.hibernate.dialect.OracleDialect
true
org.springframework.orm.hibernate4.SpringSessionContext



    <property name="jdbcUrl" value="jdbc:jtds:sqlserver://localhost:1433;DatabaseName=AOTUREGISTER" />
    <property name="user" value="sa"></property>
    <property name="password" value="123321"></property>
    <!--连接池中保留的最大连接数 -->
    <property name="maxPoolSize" value="200"></property>
    <!--连接池中保留的最小连接数 -->
    <property name="minPoolSize" value="5"></property>
    <!--初始化时创建的连接数,应在minPoolSize与maxPoolSize之间取值 -->
    <property name="initialPoolSize" value="10"></property>
    <!--隔多少秒检查所有连接池中的空闲连接,默认为0表示不检查 -->
    <property name="idleConnectionTestPeriod" value="30"></property>
    <!--最大空闲时间,超过空闲时间的连接将被丢弃 -->
    <property name="maxIdleTime" value="120"></property>
    <!--当连接池中的连接用完时,C3P0一次性创建新连接的数目 -->
    <property name="acquireIncrement" value="3"></property>
    <!--从数据库获取新连接失败后重复尝试获取的次数 -->
    <property name="acquireRetryAttempts" value="10"></property>
    <!--两次连接中间隔时间,单位毫秒 -->
    <property name="acquireRetryDelay" value="1000"></property>
    <!--连接关闭时默认将所有未提交的操作回滚 -->
    <property name="autoCommitOnClose" value="false"></property>
    <!--用以控制数据源内加载的PreparedStatement数量 -->
    <property name="maxStatements" value="0"></property>
</bean>





org.hibernate.dialect.SQLServerDialect

        <prop key="hibernate.current_session_context_class">thread</prop>   
        </props>
    </property>
    <property name="mappingDirectoryLocations">
        <list>
            <value>classpath:com/jn/entity</value>
        </list>
    </property>

<!-- 声明式事务 -->
<bean id="txManager"
    class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory"></property>

</bean>
<tx:annotation-driven transaction-manager="txManager" proxy-target-class="true" />

bean配置








  • 写回答

1条回答 默认 最新

  • little_how 2016-07-14 02:19
    关注

    建议在数据库中检查是否是连接数已满导致的连接卡死?
    如果是,那么应该就是有连接没有关闭,可能造成没有关闭的原因是,
    方法在没有被spring事务接管的情况下没有主动关闭获取的连接导致。

    如果有帮助,希望结帖

    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘