公司服务系统蹦掉了好几次,因为是个遗留系统,有没有留下开发文档,代码已经很乱了。一直没时间去找原因,只是简单的清理了下重启了tomcat,老板就这问题也说了好几次,要求找出原因。昨天新的一年开工了,首要任务就是解决这个问题。
想想无非就那么几个地放出问题。硬件问题?虽说公司服务器比较烂吧也不至于跑不起这个系统,可以排除。一开始没有第一时间去看tomcat的日志,就去检查是不是数据库connection没有close,看看都关闭了,只是大部分地方没有关闭ResultSet和Statement,关闭了connection应该其余也就关闭了。
今天看日志才知道是内存溢出。
抛出异常:
Exception in thread "http-80-114" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-80-115" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-80-116" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-80-117" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-80-118" java.lang.OutOfMemoryError: PermGen space
Exception in thread "http-80-119" java.lang.OutOfMemoryError: PermGen space