Weblogic增加内存
如何增加Weblogic(Java)使用的内存。 从eclipse启动服务器时,它显示一条消息,即JAVA Memory arguments: -Xms256m -Xmx512m -XX:MaxPermSize=256m
。 我无法理解它从哪里获取价值。 一段时间后,Weblogic服务器由于低permgen空间而失败。
我从控制台添加了启动参数,但没有任何效果。 你能从哪里获取内存值来帮助我吗?
在Eclipse for WebLogic中配置“服务器”时,选择域目录(对于本地)。 该域目录包含Eclipse将用于启动WebLogic Server的启动脚本。 如果您在没有Eclipse的情况下启动服务器,那么这些脚本将与您使用的脚本相同。 域目录内是一个名为“bin”的文件夹。 在“bin”目录中,找到setDomainEnv文件(.sh表示unix,或.cmd表示Windows)。 在该文件中,更改内存设置以满足您的需求。
根据您在问题中提到的错误消息,我会将PermSize和MaxPermSize设置都增加到512m。 对于PermSize和MaxPermSize,默认情况下在简单的WLS安装中有两个位置,一个用于32位,另一个用于64位。 改变它们都不会有害。 但是,如果您知道正在运行的JVM体系结构,则可以更改适用于您的环境的体系结构。
您的服务器bin文件夹下将有一个文件setDomainEnv.cmd / setDomainEnv.sh。 这个文件包含
set MEM_MAX_PERM_SIZE_64BIT=-XX:MaxPermSize=512m set MEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=512m
最大和最小内存值为
if "%JAVA_VENDOR%"=="Sun" ( set WLS_MEM_ARGS_64BIT=-Xms256m -Xmx512m set WLS_MEM_ARGS_32BIT=-Xms256m -Xmx512m ) else ( set WLS_MEM_ARGS_64BIT=-Xms512m -Xmx512m set WLS_MEM_ARGS_32BIT=-Xms512m -Xmx512m )
您可以更新其中的值。
除了前两个正确的答案(修改setDomainEnv
和可能的wl_server\common\bin\commEnv
)之外,如果要使用nodemanager启动它们,还可以单独修改服务器。
在管理控制台中,导航至:
Servers -> -> Server Start tab -> Arguments
在这里,您可以为该服务器设置所需的JVM参数,而不是在所有服务器中进行全面更改以进行setDomainEnv
看起来eclipse插件添加了自己的USER_MEM_ARGS变量,因此应该使用以下方法重写:
打开以下文件:
$WL_HOME/user_projects/domains/mydomain/bin/setDomainEnv.sh
并添加下一行(例如,在帮助说明之后)
USER_MEM_ARGS=$ECLIPSE_MEM_ARGS
然后,打开weblogic服务器属性(在服务器视图中双击weblogic),然后单击“打开启动配置”。 在打开的窗口中选择“Environment”并添加带有内存参数的新变量ECLIPSE_MEM_ARGS作为值,例如:
ECLIPSE_MEM_ARGS=-Xms1024m -Xmx2048m -XX:MaxPermSize=512m
保存并检查服务器是否已应用新配置。
PS使用这种方法,您可以直接从eclipse更改/添加内存参数。
PSS在Windows中你应该使用setDomainEnv.cmd文件,添加的行应该是:
set USER_MEM_ARGS=%ECLIPSE_MEM_ARGS%
对于Weblogic12 :
环境 – >服务器 – > [your_server] – >配置/服务器启动 – >参数:
-Xms1024m -Xmx2048m
重新启动服务器:Environment-> Servers – > [your_server] – > Control /“Start / Stop” – > Suspend,然后Start。
检查内存:环境 – >服务器 – > [your_server] – >监控/性能。