今天在 性能测试过程中学到不少东西,加上前一段 时间的积累,特记录如下:
一: WebLogic配置问题:
由于WebLogic的配置问题,我们的测试出现了失败情况。原因是为WebLogic分配的 内存太少了。通过修改commom\bin\commEnv.cmd 文件来增加内存分配。
修改的部分如下:
:bea
if "%PRODUCTION_MODE%" == "true" goto bea_prod_mode
set JAVA_VM=-jrockit
set MEM_ARGS=-Xms768m -Xmx1024m
set JAVA_OPTIONS=%JAVA_OPTIONS% -Xverify:none
goto continue
:bea_prod_mode
set JAVA_VM=-jrockit
set MEM_ARGS=-Xms768m -Xmx1024m//原来是128M~256M,太小了,数据太大
goto continue
结果修改后,没有效果。还是有失败的情况。
发现,原来,在:bea下面还有一段配置信息如下:
:sun
if "%PRODUCTION_MODE%" == "true" goto sun_prod_mode
set JAVA_VM=-client
set MEM_ARGS=-Xms768m -Xmx1024m -XX:MaxPermSize=256m
set JAVA_OPTIONS=%JAVA_OPTIONS% -Xverify:none
goto continue
:sun_prod_mode
set JAVA_VM=-server
set MEM_ARGS=-Xms768m -Xmx1024m -XX:MaxPermSize=256m
goto continue
将这里的内存分配修改后见效。
原因是,上面对第一段代码是为bea自己的 JVM设置的,下面的是为Sun的设置的。而WebLogic默认的是Sun的,所以出了毛病。
二,domain中的相关配置:
1,修改bea\user_projects\domains\base_domain\bin\set DomainEnv.cmd文件.
2,修改如下几个位置: 以下蓝色部分是需修改的内存大小
set MEM_ARGS=-Xms 256m -Xmx 512m @最主要将这两个值改大,这是此域启动后,虚拟机可使用的内存
if "%JAVA_VENDOR%"=="Sun" (
@使用sun服务器开发模式下的JVM配置
if "%PRODUCTION_MODE%"=="" (
set MEM_DEV_ARGS=-XX:CompileThreshold=8000 -XX
ermSize=
48m
)
)
if "%JAVA_VENDOR%"=="Sun" ( @使用sun服务器生产模式下的JVM配置
set MEM_ARGS=%MEM_ARGS% %MEM_DEV_ARGS% -XX:MaxPermSize= 128m
)
if "%JAVA_VENDOR%"=="HP" ( @使用hp服务器生产模式下的JVM配置
set MEM_ARGS=%MEM_ARGS% -XX:MaxPermSize= 128m
)