我们正在使用一个带有spring Framework2.0的j2ee应用程序。使用的服务器是tomcat 5.5。使用的数据库是mysql。我们正在使用VPS来托管我们的应用程序,并且我们已经注意到CPU使用率随着使用我们的应用程序的用户的增加而增加。一旦用户停止使用应用程序,CPU使用率就不会下降。是连接没有正常关闭,还是有其他问题?
以下是连接的servlet.xml配置
<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>我们还尝试使用
<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>但它们都会导致相同的问题。有没有人能快点帮我们?因为我们需要尽快纠正这个问题。提前谢谢。
发布于 2011-06-19 16:19:39
高CPU使用率不太可能是由某些连接池问题引起的。这可能是应用程序代码中的一个错误。您是否监控了数据库连接-它们是否正常释放和关闭?
顺便说一下,我建议您切换到Tomcat中内置的本机连接池。它可以作为标准的Java资源从Tomcat中实现的伪JNDI中获得。
https://stackoverflow.com/questions/6398708
复制相似问题