目前,如果我们在Tomcat上托管的Spring应用程序的数据库不可用,则上下文初始化失败并且所有请求都返回404。克服这个问题的好方法是什么?我希望应用程序在下一个Tomcat之前不可用,而不是在不可用时向用户显示错误消息,并在数据库可用时自动恢复(就像在Tomcat已经运行时发生数据库故障一样)。我可以将所有bean设置为lazy-init,但我不确定这是最好的解决方案吗?Tomcat不能每x秒/请求重试一次初始化并同时显示一个像样的错误页面吗?对此有什么想法吗?数据库不可用时启动时抛出的错误示例:Causedby:java.sql.SQLException:Connections
我的SpringHibernateWeb应用程序在MySQL上运行,这给我带来了麻烦。我四处搜索并尝试了不同的配置,阅读了该网站上的不少主题,但它仍然会露出微笑的脑袋。错误信息是:Causedby:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:从服务器成功接收到的最后一个数据包是63,313,144毫秒前。最后一个成功发送到服务器的数据包是在63,313,144毫秒之前。比服务器配置的“wait_timeout”值长。在您的应用程序中使用之前,您应该考虑过期和/或测试连接有效性,增加服务器配置的客户端超时值,或使用Con
在最新版本的DBCP和C3P0上,使用Spring的Ibatis支持,我遇到了两个泄漏连接的问题。场景是有一个运行SQL的日志锁定了多个表。当用户触发命中锁定表的查询时,这会导致我的池中的连接达到最大值。最后,管理员进入MySQL并执行killquery。在长时间运行的SQL上。如果有足够多的线程(在我的例子中大约有50个或更多)正在等待将数据库线程签回池中,那么我会在线程转储中看到类似于以下内容的内容:java.lang.Thread.State:WAITING(onobjectmonitor)atjava.lang.Object.wait(NativeMethod)atcom.mc