xwm259695 发表于 2011-8-31 19:35:44

java协议脚本,场景中运行报“java.lang.OutOfMemoryError: Java heap space”

1、loadrunner版本为11。
2、jdk为1.6。
3、脚本主要功能是向服务器发送数据包。
4、应用服务器:weblogic8.15。
5、测试脚本如下:/*
* LoadRunner Java script. (Build: 3020)
*
* Script Description:
*                     
*/
import lrapi.lr;
import mytest.Zlib;
import mytest.post;

public class Actions
{

        public int init() throws Throwable {
                return 0;
        }//end of init


        public int action() throws Throwable {
                  try{
               
              lr.start_transaction("kjzl_sbmx");

                      post.main((String[])null);

              lr.end_transaction("kjzl_sbmx", lr.AUTO);

             }catch(Exception e){
               e.printStackTrace();
             }   
                return 0;
        }//end of action

      
        public int end() throws Throwable {
                return 0;
        }//end of end
}6、场景中当vuser=50时,loadrunner自己就开始报“错误: java.lang.OutOfMemoryError: Java heap space”的错误。(应用服务器控制台没有出现任何错误,一切运行正常。)

    网上查找资料,在本机环境变量中添加 JAVA_OPTS=-Xms512m -Xmx512m没有解决。
检查代码也没有发现问题。现在很茫然,不知如何解决。希望专家指点!!!!!

fs2002 发表于 2011-8-31 22:02:52

JAVA_OPTS=-Xms512m -Xmx512m


你先查查你配置的这个起作用没有

xwm259695 发表于 2011-8-31 23:01:22

本帖最后由 xwm259695 于 2011-8-31 23:04 编辑

是不是如果我本机设置JAVA_OPTS 成功以后,上面出现的问题就可以解决了?????除了这样还有其它好办法吗?

wldtzzming 发表于 2011-9-1 17:15:55

内存泄漏!查下服务器的内存是不是不够了!把这台服务器上的其他服务器停掉,重启下服务器,再试试!

lius1986 发表于 2011-9-1 19:36:53

看你收发的包有多大,他们都是先放在内存里面再收发,然后释放内存。
还有看代码中是否都回收了内存。
你那内存大小还可以再提升啊!

msnshow 发表于 2011-9-1 21:31:22

说明内存不够用嘛,再设置大一些

icedazzle87 发表于 2011-9-2 16:56:13

1.在我的电脑设置环境变量
JAVA_OPTS='-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】'
2.在Windows(Unix下,在文件/bin/catalina.sh)下tomcat/bin/catalina.bat中增加
set JAVA_OPTS=%JAVA_OPTS% -
3.启动tomcat,ok搞定

xwm259695 发表于 2011-9-3 19:23:04

第一、处出现错误是在我本机,监控webloigc服务器jvm值变化正常,所以与服务器没什么关系。
第二、我将上传的数据减少了一半,再次场景中运行没有问题。
分析觉得是我上传的数据包太大导致本机内存不足造成的。问题终于解决了,谢谢大家帮忙!!!!!

lin_lanfen 发表于 2015-1-16 12:53:46

通知: Found jdk version: 1.6.0.
通知: classpath=E:\LR\java\fileUpload\;c:\program files (x86)\hp\loadrunner\classes\srv;c:\program files (x86)\hp\loadrunner\classes;C:\Program Files (x86)\HP\LoadRunner\classes\srv\code_gen;C:\Program Files (x86)\HP\LoadRunner\classes;C:\Program Files (x86)\Java\jdk1.6.0_43\bin;.;C:\Program Files (x86)\Java\jdk1.6.0_43\lib;C:\Program Files (x86)\Java\jdk1.6.0_43\lib\tools.jar;E:\LR\lib\json.jar;;;;c:\program files (x86)\hp\loadrunner\lib\xstream-1.3.jar;c:\program files (x86)\hp\loadrunner\lib\xpp3-1.1.4c.jar
通知: Path=C:\Program Files (x86)\Java\jdk1.6.0_43\jre\bin\client;C:\PROGRA~2\HP\LOADRU~1\bin;C:\PROGRA~2\HP\LOADRU~1\bin\gecko;C:\PROGRA~2\HP\LOADRU~1\bin\tulip\bin;E:\LR\lib;C:\Program Files\Internet Explorer;C:\Program Files (x86)\Internet Explorer;C:\Python27\;C:\Python27\Scripts;.;C:\Program Files (x86)\HP\LoadRunner\classes\lrapi;C:\Program Files (x86)\Java\jdk1.6.0_43\bin;C:\Program Files (x86)\Java\jdk1.6.0_43\jre\bin;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Windows7Master;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\strawberry\c\bin;C:\strawberry\perl\bin;C:\Users\Administrator\AppData\Roaming\Python\Scripts;
通知: VM Params: -Xmn128m -Xms256m -Xmx512m.
通知: Error occurred during initialization of VM

通知: Could not reserve enough space for object heap
==========================================
在运行时设置中调大了内存,结果报了这个错。请大家指点!谢谢
页: [1]
查看完整版本: java协议脚本,场景中运行报“java.lang.OutOfMemoryError: Java heap space”