weloi优化设置调优参数及监控指标
优化设置优化设置 WeblogicWeblogic 服务程序设置:服务程序设置: 1 1、设置、设置 JDKJDK 内存:内存: 修改 weblogic\user_projects\domains\base_domain\bin 下的 setDomainEnv. 文件: 修改前: if “%JAVA_VENDOR%“==“Sun“ ( set WLS_MEM_ARGS_64BIT=-Xms256m -Xmx512m set WLS_MEM_ARGS_32BIT=-Xms256m -Xmx512m ) else ( ) set MEM_PERM_SIZE_32BIT=-XX:PermSize=48m set MEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=128m 修改后: if “%JAVA_VENDOR%“==“Sun“ ( set WLS_MEM_ARGS_64BIT=-Xms512m –Xmx1024m set WLS_MEM_ARGS_32BIT=-Xms512m –Xmx1024m set WLS_MEM_ARGS_64BIT=-Xms512m -Xmx512m set WLS_MEM_ARGS_32BIT=-Xms512m -Xmx512m ) else ( ) set MEM_PERM_SIZE_32BIT=-XX:PermSize=128m set MEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=256m set WLS_MEM_ARGS_64BIT=-Xms1024m –Xmx1024m set WLS_MEM_ARGS_32BIT=-Xms1024m –Xmx1024m 说明:说明:红色字体为修改的内容,具体修改值根据实际物理内存确定 • • -Xmx3550m:设置 JVM 最大堆内存最大堆内存为 3550M。 -Xms3550m:设置JVM 初始堆内存初始堆内存为 3550M。此值可以设置与-Xmx 相同,以 避免每次 JVM 动态分配内存所浪费的时间。 • -XX:PermSize=256M:设置堆内存持久代堆内存持久代初始值为 256M。(貌似是 Eclipse 等 IDE 的初始化参数) • -XX:MaxPermSize=512M:设置持久代最大值为 512M。 32 位操作 JDK 内存系统:最大可设置 1.5G,如果设置过大,会导致服务无法启动 64 位操作 JDK 内存系统:最大设置为物理内存的 60~80% 2 2、设置线程数:、设置线程数: 修改 weblogic\user_projects\domains\base_domain\bin 下的 setDomainEnv. 中在 JAVA_OPTIONS 中添加如下: set JAVA_OPTIONS=%JAVA_OPTIONS% -Dweblogic.threadpool.MinPoolSize=2000 set JAVA_OPTIONS=%JAVA_OPTIONS% -Dweblogic.threadpool.MaxPoolSize=4000 说明:说明: JDK5.0 以后每个线程栈大小为 1M,但是操作系统对一个进程内的线程数还是有限制的, 不能无限生成。32 位操作系统根据 JVM 最大堆内存设置;64 位操作系统经验值在 3000~5000 左右。 3 3、、WeblogicWeblogic 数据库连接池连接数设置:数据库连接池连接数设置: 受 Oracle 数据库连接数的影响, 可以参照同一时间连接数据库的用户数量, 进行设置, 数据库的最大连接数不能小于高峰时期同一时间连接用户的数量。点击数据源,进入后选择 连接池: 初始容量:20 最大容量:50 容量增长:5 说明:说明: 设置前得设置数据库的最大并发线程数(下面有介绍 Oracle 数据库线程数设置方法) , 因为 weblogic 节点的连接池最大连接数之和不能大于数据库的最大线程数。 • 初始容量:要在创建连接池时创建的物理连接数。如果无法创建这一数量的连接, 创建此连接池的操作将会失败。此连接数也是连接池将保持的最小可用物理连接 数。 • • 最大容量:此连接池可容纳的最大物理连接数。 容量增长:将新连接添加到连接池时创建的连接数。不再有可用的物理连接来满足 连接请求时,WebLogic Server 会创建该数量的附加物理连接并将它们添加到 连接池中。MBean 属性 (不适用于应用程序模块): JDBCConnectionPoolParamsBean.CapacityIncrement。 4 4、、WeblogicWeblogic 的服务设置的服务设置[ [配置配置\ \优化优化] ]:: 接受积压:300 登录超时:5000 说明:说明: • 接受积压:对于此服务器的常规和 SSL 端口,应该允许的新 TCP 连接请求的积 压数量。 将积压设置为 0 可以防止此服务器接受某些操作系统上的所有传入连接。 MBean 属性:ServerMBean.AcceptBacklog。最小值:0 • 登录超时: 此服务器的默认常规 (非 SSL) 监听端口的登录超时。 这是允许建立新 连接的最长时间。如果值为 0,表示无最大值。MBean 属性: ServerMBean.LoginTimeoutMillis 最小值:0。最大值:100000。安全值: 5000 weblogicweblogic调优参数调优参数 对Weblogic的调优主要从SEVER、cuteQueue、JDBC等几个方面的相关参数进行调优: 一、一、SERVERSERVER 在mydomain-Servers-myserver-Configuration-Tuning-“Enable Native IO”中: 1、Native IOEnabled TRUE,表示该Server使用本地I/O 2、SocketReaders 设置在执行线程中专用做Socket Readers的百分比 3、Maximum Open Sockets 最大打开Socket数 4、Stuck Thread MaxTime 堵塞线程时间,超过这个时间没有返回的执行线程,系统将认为是堵塞线程 如果weblogic认为某个队列中的所有的线程全部堵塞的话,weblogic将会增加执行线程 的数量。 注意:执行线程的数量一旦增加,目前weblogic不会去减少他,如果增加了一些线程以 后再次出现overflow的警告,weblogic会继续增加执行线程的数量,一直到达到上限为止。 5、Stuck Thread Timer Interval 系统检查堵塞线程的时间间隔 6、Low Memory GC Threshold 当可用内存小于该百分比时,垃圾回收启动 7、Low Memory Granularity Level 当两次检测的可用内存变化超过该百分比时,垃圾回收启动 8、Low Memory Sample Size 在一次检测中的取样次数 9、Low Memory Time Interval 检测间隔时间 10、