sqlservr.exe打开了数百个TCP连接

时间:2016-02-19 14:36:37

标签: hibernate sql-server-2008-r2 tomcat7 c3p0

我们在一台计算机上安装了Tomcat,在另一台计算机上安装了SQL Server。

我们的SQL Server计算机是Windows 2008 R2 64位计算机,具有32GB可用RAM 4个处理器,16个cpu。 我们使用数据库池来保持数据库连接的可重用性。

我正在查看Task Manager中的资源监视器,我注意到从应用程序服务器到SQL Server machine的TCP连接数。

总共有1014个连接。

其中1009个是' AWAITING COMMAND ',status =' sleep '。 其他5个是' SELECT '和' UPDATE ',status =' runnable '。

enter image description here 有谁知道为什么会这样?

我的application-context.xml:

<bean id="hibernateProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
        <property name="properties">
        <props>
            <prop key="hibernate.hbm2ddl.auto">update</prop>
            <prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop>
            <prop key="hibernate.show_sql">false</prop>
            <prop key="hibernate.c3p0.min_size">4</prop>
            <prop key="hibernate.c3p0.max_size">10</prop>
            <prop key="hibernate.c3p0.timeout">600</prop>
            <prop key="hibernate.c3p0.max_statements">25</prop>
            <prop key="hibernate.c3p0.testConnectionOnCheckout">false</prop>
            <prop key="hibernate.cache.use_second_level_cache">false</prop>
        </props>
        </property>
    </bean>

c3p0.properties:

c3p0.maxIdleTime=900
c3p0.maxStatements=150
c3p0.maxIdleTimeExcessConnections=300
numHelperThreads=6
unreturnedConnectionTimeout=3600

Tomcat的context.xml:

<Resource 
    auth="Container" 
    description="MY Database" 
    driverClass="net.sourceforge.jtds.jdbc.Driver"
    factory="org.apache.naming.factory.BeanFactory"
    name="jdbc/myDB" 
    username="sa" 
    password="p@ssword"
    type="com.mchange.v2.c3p0.ComboPooledDataSource"
    url="jdbc:jtds:sqlserver://100.00.22.012:1433/mtDB;user=sa;password=p@ssword;TDS=8.0" "
  /> 

0 个答案:

没有答案