linux服务器+tomcat6+jdk6运行后台程序。
在开发阶段,发现内存溢出,第一感觉就是数据库连接没有关闭,于是在代码里找没有关闭的连接,看到几行代码可能有问题,就把他的连接对象依次关闭,但是发现并没有解决问题,内存还是会不断的增大,它的变大是有规律的,只要有数据库操作内存就会增长,如是坚定了数据库连接的问题上,于是看到有一处代码,频繁的操作数据库,但是他的statment没有关闭,把它关闭后,内存会趋于稳定,但是数据量一增加,内存就会稳定一段时间后上涨,于是看到当线程增长时内存也在跟着增加,发现要对线程进行控制,于是把线程数控制在1个,此时的内存不再增加,只是震荡。此时在服务器正式运行时就把socket线程控制在1024,但是把处理线程设置成500个,此时服务器错误提示数据库连接数太多,因为默认连接数只有100,貌似是处理线程的问题,于是把处理线程控制在100以内。此时服务器运行到现在为止正常,没有了内存的扩大。