7

如何增加我的 Weblogic (Java) 使用的内存。从 Eclipse 启动服务器时,它会显示一条消息,即JAVA Memory arguments: -Xms256m -Xmx512m -XX:MaxPermSize=256m. 我不明白它是从哪里获取这个价值的。一段时间后,Weblogic 服务器由于 permgen 空间不足而失败。

我从控制台添加了启动参数,但这没有任何效果。你能帮我从哪里获取内存值吗?

4

5 回答 5

7

在 Eclipse 中为 WebLogic 配置“服务器”时,选择域目录(用于本地)。该域目录包含 Eclipse 将用于启动 WebLogic Server 的启动脚本。如果您在没有 Eclipse 的情况下启动服务器,这些脚本与您将使用的脚本相同。在域目录中是一个名为“bin”的文件夹。在“bin”目录中,找到 setDomainEnv 文件(.sh 用于 unix,或 .cmd 用于 Windows)。在该文件中,更改内存设置以满足您的需要。

根据您在问题中提到的错误消息,我会将 PermSize 和 MaxPermSize 设置都增加到 512m。对于 PermSize 和 MaxPermSize,在简单的 WLS 安装中默认有两个位置,一个用于 32 位,另一个用于 64 位。改变它们都不会有什么坏处。但是,如果您知道自己运行的是哪种 JVM 架构,则可以更改适用于您的环境的架构。

于 2013-11-08T21:51:50.933 回答
6

您的服务器 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
)

您可以更新其中的值。

于 2013-11-08T11:05:37.073 回答
3

看起来 eclipse 插件添加了它自己的 USER_MEM_ARGS 变量,所以它应该使用以下方法重写:
打开以下文件:

$WL_HOME/user_projects/domains/mydomain/bin/setDomainEnv.sh

并添加下一行(例如在帮助描述之后)

USER_MEM_ARGS=$ECLIPSE_MEM_ARGS

然后,打开 weblogic 服务器属性(在服务器视图中双击 weblogic)并单击“打开启动配置”。在打开的窗口中选择“环境”并添加新变量 ECLIPSE_MEM_ARGS 与内存参数作为值,例如:

ECLIPSE_MEM_ARGS=-Xms1024m -Xmx2048m -XX:MaxPermSize=512m

保存并检查服务器是否应用了新配置。
PS 使用这种方法,您可以直接从 Eclipse 更改/添加内存参数。
PSS 在Windows中,您应该使用setDomainEnv.cmd文件,添加的行应该是:

set USER_MEM_ARGS=%ECLIPSE_MEM_ARGS%
于 2015-01-15T14:36:23.233 回答
3

除了前两个正确的答案(修改setDomainEnv和潜在wl_server\common\bin\commEnv)之外,如果您使用节点管理器启动它们,您还可以单独修改服务器。

在管理控制台中导航到:

Servers -> <server name> -> Server Start tab -> Arguments

在这里,您可以为该服务器设置所需的 JVM 参数,而不是在所有服务器中一揽子更改为 setDomainEnv

于 2013-11-10T17:58:28.867 回答
0

对于 Weblogic12

Environment->Servers->[your_server]->Configuration/Server Start -> 参数:

-Xms1024m -Xmx2048m

重启服务器:Environment->Servers->[your_server]->Control/"Start/Stop" -> Suspend 然后启动。

检查你的记忆:环境->服务器->[your_server]->监控/性能。

于 2016-04-26T07:55:49.373 回答