为什么我的DBCP连接池没有连接?

时间:2012-05-08 12:04:22

标签: java sql-server-2005 connection-pooling

我使用连接池(DBCP)和Sql Server 2005开发了Java应用程序。在我的配置文件中,我有MaxActive="500"但在某些情况下它会超过500个连接。为什么?数据库很慢。

<Resource
    name="jdbc/tm4u"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
    url="jdbc:sqlserver://XXXX;databaseName=XX;User=abc;Password=son;selectMethod=cursor"
    username="abc"
    password="son"
    autoReconnect="true"
    maxActive="500"
    removeAbandoned="true"
    logAbandoned="true"
    removeAbandonedTimeout="60"
    maxIdle="10"
    /> 

1 个答案:

答案 0 :(得分:0)

在您的代码中,您是否关闭已打开的连接?通过这样做,连接将返回到池并重新使用。在这种情况下应该没有性能下降。但是,如果我们需要超过500个活动连接,其中一些必须等待。

另请参阅有关SO的其他问题。