Weblogic(12c)JVM参数调整(jdk8)

查看当前生效的jvm参数

  • 查询当前jvm的pid
    • web项目一般根据端口获取到pid
      • windows
      netstat -ano|findstr "8080"
      
      • linux
      ps -ef |grep "8080"
      
    • 执行jinfo -flags pid,查看command line这一行,这就是你配置的jvm参数

Weblogic(12c)参数调整

  • 位置在$DOMAIN_HOME$ /bin/setDomainEnv.cmd
  • 调整内存参数(jvm heap)
    在:
    if NOT "%USER_MEM_ARGS%"==""(
                set MEM_ARGS=%USER_MEM_ARGS%
    )
    
    之前添加一行:
    set USER_MEM_ARGS=-Xmx16g -Xms16g -Xmn8g
    
    即可生效
  • 调整其他参数
    @REM SET THE CLASSPATH这一行之前,或者说在这个文件内最后一次出现JAVA_OPTIONS之后添加一行:
    set JAVA_OPTIONS=-server -Xmn256m -Xss512k -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70
    
    解释如下
    -server//服务器模式
    -XX:MetaspaceSize=2048m // 元空间大小
    -XX:MaxMetaspaceSize=4096M //元空间最大大小
    -Xmx8g //JVM最大允许分配的堆内存,按需分配
    -Xms8g //JVM初始分配的堆内存,一般和Xmx配置成一样以避免每次gc后JVM重新分配内存。
    -Xmn512m //年轻代内存大小,整个JVM内存=年轻代 + 年老代 + 持久代 
    -Xss512k //设置每个线程的堆栈大小
    -XX:+DisableExplicitGC //忽略手动调用GC, System.gc()的调用就会变成一个空调用,完全不触发GC
    -XX:+UseConcMarkSweepGC //并发标记清除(CMS)收集器
    -XX:+CMSParallelRemarkEnabled //降低标记停顿
    -XX:LargePageSizeInBytes=128m //内存页的大小
    -XX:+UseFastAccessorMethods //原始类型的快速优化
    -XX:+UseCMSInitiatingOccupancyOnly //使用手动定义初始化定义开始CMS收集
    -XX:CMSInitiatingOccupancyFraction=70 //使用cms作为垃圾回收使用70%后开始CMS收集
    

你可能感兴趣的:(Weblogic(12c)JVM参数调整(jdk8))