2011-06-18 97 views
0

我们在spring framework 2.0中使用j2ee应用程序。使用的服务器是tomcat 5.5。使用的数据库是mysql。我们正在使用VPS来托管我们的应用程序,并且我们注意到,随着使用我们的应用程序的更多用户,CPU使用率也在增加一旦用户停止使用该应用程序,CPU使用率就不会下降。这些连接是否没有正确关闭还是有其他问题?连接未关闭Spring with tomcat 5.5

下面是连接

<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource"> 
     <property name="driverClassName" value="com.mysql.jdbc.Driver"/> 
    <property name="url" value="jdbc:mysql://localhost/myDB"/> 
    <property name="username" value="xxxx"/> 
    <property name="password" value="xxxx"/> 
    <property name="validationQuery" value="SELECT 1"/> 
     <property name="testOnBorrow" value="true"/> 
    </bean> 

的servlet.xml中的配置我们使用

<bean id="myDataSource" 
     class="org.springframework.jdbc.datasource.DriverManagerDataSource"> 
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/> 
    <property name="url" value="jdbc:mysql://localhost/myDB"/> 
    <property name="username" value="xxxx"/> 
    <property name="password" value="xxxx"/> 
</bean> 

但他们都导致同样的问题也试过。任何人都可以快速帮助我们吗?因为我们需要尽早纠正这个问题。提前致谢。

回答

0

由于某些连接池问题导致高CPU使用率不太可能。这可能是您的应用程序代码中的一个错误。你有没有监测数据库连接 - 它们是否正确释放和关闭?

顺便说一下,我建议你切换到在Tomcat中构建的本机连接池。它可以作为Tomcat中实现的伪JNDI的标准Java EE资源获得。