网站上线后,运行还算稳定。但随着网站访问量的增加,网站开始出现不定时的服务器崩溃现象,导致网站无法访问。
这个问题最为严重的影响是,但是服务器部署了一个Tomcat服务器,两个web应用全部都部署在这个服务器中,结果就是,一旦其中一个服务器导致Tomcat服务器当机,两个网站一起都无法访问,这个问题是需要立即解决的。
网站访问量大,Tomcat服务器就崩溃,崩溃的原因很简单,内存溢出,访问量大是一个原因,后来我也发现,web开发使用的框架本身也有一些问题,会导致在一些情况下大量使用内存,最后导致服务器因为内存溢出而当机。
当时的情况不允许我去从框架里慢慢找问题,解决方案也很简单:将两个web应用分拆到两个Tomcat服务器中,这样起码不会因为其中一个应用当机,连带另一个应用无法访问,然后使用Apache进行tomcat集群,至于内存溢出,因为当时服务器使用的Windows2003,所以解决方案就是,指定Windows任务计划,每天对两个Tomcat服务器进行重启操作,尽量减少内存溢出的可能性。
apache进行Tomcat服务器集群,头儿在我之前就试着配置过,解决的问题和这次一样,但一直没有配置成功,就还是凑活着用一个Tomcat,但后期的计划是还要开发多个web应用,为了避免应用之间的相互影响,这个配置看起来是必须完成的了。
头儿给了我他当初配置招的一些资料,但我试了之后还是有问题,所以自己还是零星的Google了一些配置资料,然后又找到Apache的帮助文档(这个最郁闷,只有英文的),开始一步步的试着配置。
靠着硬是啃那份英文文档(头儿后来也提到过,因为英文文档的原因,一些问题解决不了,网上也没有解决方法所以配置一直失败),和零星的资料,最后还是比较成功的搞成了,达成了事前的预期,因为过程当初看起来比较复杂,所以在JE上还比较详细的记录了一下配置,并写了一份文档给了头儿保存。
后来在另一个服务器进行部署,这个文档作用体现出来了,呵呵
不管怎么样,这个问题总算是解决了,算是了了一个麻烦,也算是我的互联网应用的第一次遇到问题,还算是比较好的解决了。嘿嘿
本文分享了一种解决高访问量下Tomcat服务器频繁崩溃的方法,通过将应用程序拆分为两个并配置Apache进行集群来避免单一故障点,同时采用定时重启策略缓解内存溢出问题。
15万+

被折叠的 条评论
为什么被折叠?



