我写了一个小程序关于取资料的。我所面对的问题是当所取的资料非常非常多时(大约20000000个资料),系统运行会当掉,当所取的资料还好时(大约200个资料),系统运行得非常慢,当所取的资料不多时(大约100个资料),系统运行得正常。我想知道什么原因会造成这个问题发生?请问tomcat的 heap size会影响吗?
取资料是什么意思?也不知道你用什么方式.
不管是向数据库操作,还是读取文件,不释放内存就会出现TOMCAT内存不足.
heap size当然会影响的,如果把TOMCAT的内存加大可能会暂时解决当掉的问题,但一般不要过2G.因为JVM有一定的内存控制范围的.
你可以用JPROBE监视一下程序,有没有内存的泄漏问题.
内存不足,建议分批取出,你随便写个循环2千万次也慢的要命,何况是在里面操作了,建议换个思路