centos

centos weblogic内存配置技巧

小樊
44
2025-10-09 08:07:59
栏目: 智能运维

CentOS环境下WebLogic内存配置技巧

一、基础配置步骤

  1. 定位配置文件
    CentOS系统中,WebLogic内存参数主要通过域目录下的bin/setDomainEnv.sh(Linux环境通用)文件配置,部分场景需调整startWebLogic.sh(启动脚本)或commEnv.cmd(JRockit JVM配置)。

  2. 设置核心内存参数
    setDomainEnv.sh中修改MEM_ARGS变量,定义JVM堆内存及元空间(Java 8+)大小。关键参数说明:

    • -Xms:初始堆内存(如-Xms2048m),建议与-Xmx一致以避免动态扩容开销;
    • -Xmx:最大堆内存(如-Xmx4096m),需预留系统及其他应用内存;
    • -XX:MaxMetaspaceSize(Java 8+替代-XX:MaxPermSize):元空间最大大小(如-XX:MaxMetaspaceSize=512m)。
      示例配置:export MEM_ARGS="-Xms2048m -Xmx4096m -XX:MaxMetaspaceSize=512m"

二、针对不同WebLogic版本的调整

三、优化技巧

  1. 调整Linux内核参数

    • 降低vm.swappiness(默认60,建议10-30):减少系统对交换空间的依赖,提升物理内存利用率。执行echo 'vm.swappiness = 10' | sudo tee -a /etc/sysctl.conf && sudo sysctl -p生效。
    • 控制脏数据写回频率:设置vm.dirty_ratio(默认20,建议10-20),避免频繁写回导致IO瓶颈。执行echo 'vm.dirty_ratio = 10' | sudo tee -a /etc/sysctl.conf && sudo sysctl -p生效。
  2. 合理分配物理内存

    • 初始堆内存(-Xms):建议为物理内存的10%-20%(如16GB物理内存设为2GB);
    • 最大堆内存(-Xmx):建议为物理内存的50%-70%(如16GB物理内存设为8GB),需预留20%-30%给系统、内核及WebLogic自身进程。
  3. 监控与调优

    • 使用free -m命令监控系统内存使用情况,重点关注available内存(可用内存);
    • 通过JConsole、VisualVM或WebLogic控制台(“服务器→监控→内存”)实时查看堆内存、元空间使用率及GC频率;
    • 定期分析GC日志(添加-XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/path/to/gc.log参数),识别内存泄漏或GC瓶颈。

四、注意事项

0
看了该问题的人还看了