关于spring mvc使用c3p0数据源的无响应问题
本期做了两个Web应用,都是使用的spring mvc,两个项目也各配置了自己的数据源——c3p0,两个应用之间使用rest服务通信。
在把两个应用都部署到服务器上的tomcat后,出现了问题。不定时地,随机某个应用的数据库操作会出现无响应的现象,一直在等待,产看tomcat日志,项目日志无果,最后没办法只能靠重启tomcat才能正常运行。
后来在c3p0的配置中发现有个属性checkoutTimeout,设置这个属性是当连接池用完时客户端调用getConnection()后等待获取新连接的时间,超时后会抛出SQLException。默认为0,则无限等待。个人认为设置后起码出现上述的问题应该抛出异常吧。
但不明白的是为什么这两个应用运行在tomcat上会出现数据库连接的问题,推测出现一直等待的原因是应用获取不到数据库连接,所以一直在等待。
求解答。
天下狼友是一家
10 years, 6 months ago