日期:2014-05-18  浏览次数:20783 次

数据库中断后WEB服务器资源耗尽怎么解决?
我的系统是TOMCAT+JSP+bean+sqlserver,同时支持1000人在线没问题。但是最近碰到一个问题,就是晚上对数据库进行重建索引的时候,由于时间太长导致数据表临时锁定1个小时,因此在这一个小时内对网站无法访问,但是这些累计的访问会导致WEB服务器资源的耗尽,需要重新启动TOMCAT。请问如何解决?
    我希望是,在数据库维护的那一个小时可以容许网站不能访问,但可不可以在数据库中断一段时间后(1个小时左右),WEBSERVER不用重启仍然能够工作?

------解决方案--------------------
做一个状态,如果状态是系统维护中,转到一个提示页面
------解决方案--------------------
在建一个DB做一个镜像连接,如果一个主DB连接不上了,就连接到子DB上
------解决方案--------------------
可以在网站中加一个开关模块,当你维护数据库的时候,把这个模块设置成OFF,那么网站就不会提供正常的服务,只有一个“正在维护”的页面;等你维护结束了,在把模块ON,网站就恢复了。


------解决方案--------------------
可以定时 关闭 定时启动 linux 配置crontab
如何配置可以参考:http://blog.yesky.com/433/starcsdn/1117433.shtml
------解决方案--------------------
不知道你时候使用的是连接池,连接池是有自动重连接的设置选项的,可以在数据库重启后自动重新连接
removeAbandoned= "true "这个是Tomcat自带连接池中设置自动重连接的选项
------解决方案--------------------
http://www.showme99.com/yemian/12/22891.htm
这里有Tomat的定时器
可以定时触发代码
------解决方案--------------------
能否在定时触发里修改连接池
并重启Tomcat
然后1点后再修改连接池的代码
并重启Tomcat
个人思想
可能要用其他编程语言来写
------解决方案--------------------
能明确一点么?我是在连接数据库的时候捕捉SQLexception,然后转到错误页面,但是过一段时间后,系统资源还是被耗光了。

这里可以用Thread.sleep(1000*60*)来进行一小时休眠


------解决方案--------------------
我希望是,在数据库维护的那一个小时可以容许网站不能访问,但可不可以在数据库中断一段时间后(1个小时左右),WEBSERVER不用重启仍然能够工作?

========================================================================

to 楼主:

允许一个小时可以不能访问网站,那你把TOMCAT 关了就可以了,关了客户端就绷能访问了
也就不能连数据库了,这样你就可以重建索引了,等索引建立好了
再启动TOMCAT


------解决方案--------------------
关闭执行 /bin/shutdown.bat

启动执行/bin/startup.bat