weblogic:GC overhead limit exceeded or OutOfMemoryError
修改JVM 的内存值。
A:commEnv.sh(全局)
路径:weblogicPath\common\bin\commEnv.sh
B:setDomainEnv.sh(针对test_domain生效)
路径:user_projects\domains\test_domain\bin\setDomainEnv.sh
C:startWebLogic.sh (web启动加载的JVM变量)
路径:user_projects\domains\test_domain\bin\startWebLogic.sh
选择哪一个都行,我习惯修改:
setDomainEnv.sh,startWebLogic.sh,stopWebLogic.sh
=============================================================================
解决问题过程:
=============================================================================
咱们启动domain时的启动加载日志:
[[email protected] bin]$ pwd
/home/test/domains/test_domain/bin
[[email protected] bin]$./startWebLogic.sh
首先:咱们观察一下启动时加载的JVM。
-client -Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=25m -XX:MaxPermSize=128m -Xverify:none -da
然后:咱修一下setDomainEnv.sh:
路径:/home/test/domains/test_domain/bin/setDomainEnv.sh ,找到位置,修改后的参数如下:
最后:重新启动,咱们再看看启动效果
-client -Xms666m -Xmx888m -XX:CompileThreshold=8000 -XX:PermSize=111m -XX:MaxPermSize=128m -Xverify:none -da
总结:JVM内存咱们已经改过来了,试试是否处理效果。
从产品的管理上讲,建议在创建域的时候就修改JVM参数:
这样去修改的方便之处,就是在于,查找进程的时候,比如:ps -ef|grep java,进程太多了,看的眼花,通过观察自己配置的jvm参数,就能很快判断你是那个任务,便于产品的管理。