当前位置:首页 > 内存 > 正文

weblogic堆内存溢出

  • 内存
  • 2024-05-31 19:00:21
  • 5895

一、weblogic子节点内存溢出怎么解决彻底解决Weblogic报出的emoryError:PermGenspace
问题:
打开domains下的bin
目录(D:\Oracle\Middleware\user_projects\domains\base_domain\bin)
编辑文件并根据您的要求更改下面蓝色区域中的内存大小。
setWLS_HOME=%WL_HOME%\server
if"%JAVA_VENDOR%"=='Sun'(setWLS_MEM_ARGS_64BIT=-XMS512M-==​​Truth"(
setmem_args=%mem_args_64bit%)Else(
setmem_args=%mem_args_32bit%)
setmem_perm_64bit=-xx:permsize=128mErm_size_32bit=-XX:PermSize=48m
if"%JAVA_USE_64BIT%"==true"(
setMEM_PERM_SIZE=%mem_perm_size_64bit%)否(
setMem_perm_size=%mem_perm_size_32bit%)
setMem_max_max_max_size_64bit=-xx:maxpermsize=256mem_max_max_max_max_max_max_perm_size_size_size_size_32bit=256m
我的修改如下:
setWLS_HOME=%WL_HOME%\server
if"%JAVA_VENDOR%"=='Sun'(
setWLS_MEM_ARGS_64BIT=-)GS_64BIT%)else(
setMEM_ARGS=%MEM_ARGS_32BIT%)
setMEM_PERM_SIZE_64BIT=-XX:PermSize=128m
setMEM_PERM_SIZE_32BIT=-XX:PermSize=512m
if"%JAVA_USE_64BIT%"==true"(
setMEM_PERM_SIZE=%MEM_PERM_SIZE_64BIT%)否则(
setMEM_PERM_SIZE=%MEM_PERM_SIZE_32BIT%)
setMEM_MAX_PERM_SIZE_64BIT=-XX:MaxPermSize=256m
setMEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=1024m
注:wlserver_10.3\common\bin\
MEM_ARGS='-Xms32m-Xmx200m-XX:MaxPermSize=临时解决“128m”中D:\Oracle\Middleware\配置中的内存溢出问题
-Xms:初始内存值
-Xmx:最大内存值(不超过内存的80%)
MaxPermSize:PermGen(类和元存储区域)区域内存的最大值。
可以调整为:
MEM_ARGS='-Xms512m-Xmx512m-XX:MaxPermSize=256m'
-XX:MaxPermSize可以改为256或512


二、Weblogic启动参数设置,内存溢出我们先来看看内存泄漏问题。如果找不到,可以暂时增加MaxPermSize
例如增加到512m。


三、JavaOutOfMemoryError的原因是什么,什么是Javanative方法OutOfMemoryError:PermGenspace似乎是内存故障。您需要增加内存来解决该问题。解释为什么会发生内存泄漏。这部分用于存储类和元信息。类与存放GC(GarbageCollection)的堆区不同。PermGenspace在运行时会被清理,因此如果您的APP加载大量CLASS,则可能会出现PermGenspace错误。当Web服务器预编译JSP时,经常会出现此错误。如何修复:-Xms256m-Xmx256m-XX:MaxNewSize=256m-XX:MaxPermSize=256m2。在Tomcat上重新部署时出现内存不足错误。可能的原因有:
1.对于Proxool,
2.不要使用Log4j,仅使用common-logging。
3.请尽快将旧版本的cglib更新到最新版本。
4.更新到最新的hibernate3.23。
这也适于其他WEB服务器,例如jboss、weblogic等。