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

讨论一下jsp+javabean+servlet的性能问题
问题:
1、使用javabean创建对象时,每创建一个对象就回消耗一部分内存,然而在一个网站,有许许多多个javabean,那么他们都会不同程度地对内存进行消耗。
2、使用数据库连接的时候,每一次建立连接,每一次statement,每一次resultset都会对内存有所开销。这是消耗内存的第二个方面。
3、虽然jvm的垃圾回收机制能够在一定程度上将内存进行回收,但是,他都是当内存剩下5%(听说的)的时候执行的,并且在执行的时候,GC的优先级是最高的,其他程序全部停掉,所以在清除内存的过程中,会出现许多问题。

所以,要改善性能的话,就必须对程序进行优化,比如数据库的连接池。但是连接池虽然在一定程度上能够减少connect的次数,但是statement和resultset始终还是要的。


不会分析了。欢迎讨论...


------解决方案--------------------
1,但是当对象被销毁时,内存就释放了;
2,现在一般用所谓的连接池;就是,不是真正的释放连接;
3,“GC的优先级是最高的”这句话刚好相反了,GC的优先级是最低的!!