【问题标题】:Out of memory issue with weblogic server 11gweblogic server 11g 内存不足问题
【发布时间】:2012-10-22 07:08:23
【问题描述】:

我正在使用安装了 JRockit 的 weblogic 10.3.6。我正在使用以 Linux 作为操作系统的 64 位系统。我在其中安装了一个 adf 应用程序。只有几个用户使用该应用程序。但是安装 WLS 的服务器机器每周都会出现故障,导致内存不足。所以我们必须每周重新启动它。当我浏览时,我发现通过调整堆大小和其他内存参数可以使 WebLogic 更加稳定。

示例:--Xms256m --Xmx512m MaxPermsize 为 128m

我的问题是

  1. 这些论据是什么?

  2. 这些论点如何相互关联?

  3. 如何确定这些参数的值?

  4. 内存不足问题还有哪些其他原因?

谢谢,

拉克什

【问题讨论】:

    标签: linux weblogic oracle-adf weblogic11g


    【解决方案1】:

    Xms 和 Xmx 是 Java 程序可以使用的最小和最大堆(主要是存储对象的地方)大小。

    在您的情况下,java 程序是部署应用程序的 WebLogic 服务器。默认情况下,WebLogic 服务器设置的 Xms 和 Xmx 值为:256m 和 512m。

    您的应用程序似乎需要超过 512MB 的堆内存。所以你需要增加最大堆大小(Xmx)以避免频繁的OutOfMemory错误。

    Xmx 的新值可以是 1024m 或更大。您(或性能团队,如果有的话)必须对您的应用程序和不同的 Xmx 值进行严格的性能、可扩展性、可靠性测试,以确定最适合应用程序的方法。

    可以在脚本级别设置内存参数(即 Xms、Xmx)(如果您使用 startWebLogic.sh/startManagedWebLogic.sh 脚本来启动服务器)。

    脚本级别更改:

    • 打开 setDomainEnv.sh 并搜索“IF USER_MEM_ARGS 环境变量已设置”并在下一行插入 USER_MEM_ARGS="-Xms256m -Xmx1024m"
    • 您甚至可以使用SERVER_NAME 变量在服务器之间更改此设置,该变量包含正在启动的服务器。例如,要仅对非管理员服务器进行此设置,请插入 [ "${SERVER_NAME}" != "AdminServer" ] && USER_MEM_ARGS="-Xms256m -Xmx1024m"

    控制台更改(仅当您使用管理控制台启动托管服务器时):

    • 登录到AdminConsole-->Environments-->Servers-->->Configuration-->ServerStart-->Arguments:(TextArea)。
    • 输入:-Xms256m -Xmx1024m 并保存。

    哦,顺便说一句,JRockit does not 有任何 PermSize 的概念。

    【讨论】:

    • 感谢回复回复有帮助。那么现在我如何确定内存泄漏发生在哪里以及为什么?如何从远程服务器获取 java 哑和垃圾收集日志?
    • 我还建议JRockit Mission Control。如果您在使用该工具时遇到问题,请选择一个作为答案来关闭此问题,然后打开一个包含所有错误详细信息的任务工具问题的新帖子。
    【解决方案2】:

    获得JVM parameters的基本知识。

    简单地将几个 JVM 内存参数设置为更高的值无济于事,只会将错误转移到未来。您必须分析应用程序才能找出真正的问题。 JRockit 自带了一个非常好的内存分析工具Mission Control。观看demo,这将有助于找出应用程序的哪个部分导致内存不足错误。

    【讨论】:

    • 感谢您的回复,我尝试将任务控制连接到远程服务器,但在提供 Xmanagement:ssl=false,authenticate=false,port=7099 Djava.rmi.server 后无法连接。主机名=主机地址(weblogic 所在的位置)。有什么想法吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-18
    • 2013-08-07
    • 2015-04-15
    • 2019-11-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多