大家帮我看看这个项目这样做哪里出了问题?适合用EJB不?
系统经常被访问的实际上只有两个表,以前的版本用简单的jsp加servlet做的,Resin做服务器,运行的一直不错
后来改为CMP做持久层,JBoss做服务器,结果老出问题
开发的时候想因为经常被访问的表也就两个,性能几乎没有什么考虑的地方,分页的时候是把记录全部取出来放到Collection里面再分页,结果时不时就OutOfMemory.
今天我把分页优化了一下,把记录的key先取出来分页,然后findByKey取记录.结果发现JBoss占用的内存几乎没有什么变化,用JMeter进行压力测试,有时候报:java.net.SocketException: Connection reset by peer
搞的我现在很郁闷,怀疑用EJB到底是提高了系统性能还是相反.以前用简单的jsp+servlet从来都没有出现过OutOfMemory.用了EJB反而更糟,郁闷!
系统的日访问量大概在1万次左右,服务器CPU 3G,内存1 G .
到底是机子的配置不行还是EJB确实不是个好玩意,又或者是我程序性能太菜了?顺便请各位参考一下用CMP怎样分页比较好,现在除了把记录全部取出来外实在我想不出什么好办法.EJB-QL实在苯的我没得话说.