垃圾收集(GC)是指JVM 释放 Java 堆中不再使用的对象所占用的内存的过程,而 Java堆(Heap)是指 Java 应用程序对象生存的空间。堆大小决定了 GC 的频度和时间。堆越大,GC 频度低,速度慢。
堆越小,GC 频度高,速度快。所以 GC 和堆大小是一组矛盾。为了获取理想的 Heap 堆大小,需要使 用-verbosegc 参数(Sun jdk: -Xloggc:<file>)以打开详细的 GC 输出。分析 GC 的频度和时间,结 合应用最大负载所需内存情况 ,得出 堆的大 小。
通常情况下,我们建议使用 可用内存(除操 作系统和其他应 用程序占用之 外的内存 )70-80%,为避 免堆大小调整引起的开销,设置内存 堆的最 小值等 于最 大值即:-Xms=-Xmx。而为了防止内存溢出, 建议 在生产环境堆大小至少为 256M(Platform 至少 512M),实际环境中 512M~1G 左右性能最 佳,2G 以上是不可取的,在调整内存时可能需要调整 核心参数进程的允许最大内存数。对于 sun
和 hp 的 jvm,永久域太小(默认 4M)也可能造成内存溢出,应增加参-XX:MaxPermSize=128m。建 议设置临时域-Xmn 的大小为-Xmx 的 1/4~1/3, SurvivorRatio 为 8
堆栈内存优化,修改配置文件:
WL_HOME=C:\bea\weblogic81 "%WL_HOME%\common\bin\commEnv.cmd" :bea #如果采用的上 bea 的 JDK # JVM Heap(堆内存) 最小尺寸为96M, 最大尺 寸为256M set MEM_ARGS=-Xms96m -Xmx256m :sun #如果采用的是sun 的 JDK # JVM Heap(堆内存) 最小尺寸为32M, 最大尺寸为200M
#公共变量对象的内存限制:
PermSize:最小尺 寸, MaxPermSize :最大允许分配尺寸 set MEM_ARGS=-Xms32m -Xmx200m -XX:MaxPermSize=128m
监视堆栈使用情况:
下载JRockit JDK,
该JDK已经自带了JRockit Mission Control工具,目前好像还没有单
独下载JRockit Mission Control的地方,于JRoc kit JDK进行了绑 定下载 ;
在 C:\bea\jrockit81sp5_142_08\console
目录里面运行:
C:\bea\jrockit81sp5_142_08\bin\java –Xmanagement -jar ManagementConsole.jar
如何监控weblogic呢?
修改weblogic启动脚本st
artWebLogic.cmd ,在里 面加入-Xmanagement 启动参数:
%JAVA_HOME%\bin\java -Xmanagement %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS%
-Dweblogic.Name=%
SERVER_NAME%
-Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE%
-Djava.security.policy="%
WL_HOME%\server\lib\weblogic.policy" weblogic.Server
二、设置与性能有关的配置参数
在一个 WebLogic 域中,配置文件(config.xml)位于与管理服务器通信的机器里,提供 WebLogic MBean 的长期存储。管理服务器作为连接的中心点,为服务实例与系统管理工具 提供服务。域也可以包括其他的 WebLogic 实例,称之为从服务,主要为应用程序提供服务。 当启动管理服务器时,首先读域配置文件,然后跳过建立在配置文件中管理 MBean 默认的 属性值,每一次用系统管理工具(不管是命令行界面还是管理控制台)改变一个属性值,它 都会被存到相应的管理 MBean,并且写进配置文件。
1.下表列出了影响服务器性能的参数。
2.console控制台中的参数
详细内容请访问以下地址:
http://wenku.baidu.com/link?url=O3dH650siXq9OTfZLUSf0aYZ2rT__GM__xo5J4HHrB57Zgpd7ZKHNUz4uOxtg5g-qVZFFDvGvmaQEHGudUPaaLEAsQ08HhKMLZVPplhD5RO