【问题标题】:Weblogic increase memoryWeblogic增加内存
【发布时间】:2013-11-20 08:30:25
【问题描述】:

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

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

【问题讨论】:

    标签: java weblogic permgen weblogic12c


    【解决方案1】:

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

    你可以更新里面的值。

    【讨论】:

    【解决方案2】:

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

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

    【讨论】:

    • +1 <$WEBLOGIC_HOME>\user_projects\domains\<your_domain>\bin\setDomainEnv.cmd
    【解决方案3】:

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

    在管理控制台中导航到:

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

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

    【讨论】:

    • 您好..只是一个问题。您的意思是修改 setDomainEnv.cmd 可以吗?不管我们有多少管理服务器?
    • 理想情况下,您会使用我给出的答案,为每个服务器设置内存,但根据您的环境,在 setDomainEnv 中使用一揽子设置可能是可以的
    【解决方案4】:

    看起来 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
    

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

    set USER_MEM_ARGS=%ECLIPSE_MEM_ARGS%
    

    【讨论】:

      【解决方案5】:

      对于 Weblogic12

      环境->服务器->[your_server]->配置/服务器启动->参数:

      -Xms1024m -Xmx2048m
      

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

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

      【讨论】:

        猜你喜欢
        • 2012-03-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-12
        • 2011-01-03
        • 2016-08-30
        • 2019-03-28
        相关资源
        最近更新 更多