首页 > 代码库 > Weblogic调优
Weblogic调优
优化说明:
一、Weblogic服务程序设置:
1、设置JDK内存:
修改weblogic\user_projects\domains\base_domain\bin下的setDomainEnv.cmd文件:
修改前:
if"%JAVA_VENDOR%"=="Sun" (
set WLS_MEM_ARGS_64BIT=-Xms256m -Xmx512m
set WLS_MEM_ARGS_32BIT=-Xms256m -Xmx512m
) else (
set WLS_MEM_ARGS_64BIT=-Xms512m -Xmx512m
set WLS_MEM_ARGS_32BIT=-Xms512m -Xmx512m
)
setMEM_PERM_SIZE_32BIT=-XX:PermSize=48m
setMEM_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
) else (
set WLS_MEM_ARGS_64BIT=-Xms1024m –Xmx1024m
set WLS_MEM_ARGS_32BIT=-Xms1024m –Xmx1024m
)
setMEM_PERM_SIZE_32BIT=-XX:PermSize=128m
setMEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=256m
说明:红色字体为修改的内容,具体修改值根据实际物理内存确定
· -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、设置线程数:
修改weblogic\user_projects\domains\base_domain\bin下的setDomainEnv.cmd中在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、Weblogic数据库连接池连接数设置:
受Oracle数据库连接数的影响,可以参照同一时间连接数据库的用户数量,进行设置,数据库的最大连接数不能小于高峰时期同一时间连接用户的数量。点击数据源,进入后选择连接池:
初始容量:20
最大容量:50
容量增长:5
说明:
设置前得设置数据库的最大并发线程数(下面有介绍Oracle数据库线程数设置方法),因为weblogic节点的连接池最大连接数之和不能大于数据库的最大线程数。
· 初始容量:要在创建连接池时创建的物理连接数。如果无法创建这一数量的连接,创建此连接池的操作将会失败。此连接数也是连接池将保持的最小可用物理连接数。
· 最大容量:此连接池可容纳的最大物理连接数。
· 容量增长:将新连接添加到连接池时创建的连接数。不再有可用的物理连接来满足连接请求时,WebLogic Server 会创建该数量的附加物理连接并将它们添加到连接池中。MBean 属性 (不适用于应用程序模块):JDBCConnectionPoolParamsBean.CapacityIncrement。
4、Weblogic的服务设置[配置\优化]:
接受积压:300
登录超时:5000
说明:
· 接受积压:对于此服务器的常规和 SSL 端口,应该允许的新 TCP 连接请求的积压数量。将积压设置为 0 可以防止此服务器接受某些操作系统上的所有传入连接。MBean 属性:ServerMBean.AcceptBacklog。最小值:0
· 登录超时:此服务器的默认常规 (非 SSL) 监听端口的登录超时。这是允许建立新连接的最长时间。如果值为 0,表示无最大值。MBean 属性:ServerMBean.LoginTimeoutMillis最小值:0。最大值:100000。安全值:5000
二、Windows服务器设置:
1、修改最高端口号和TCP/IP释放连接时间:
在注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlset\Services\Tcpip\Parameters下加入新建值:
MaxUserPort,(DWORD值)十进制,65534
TcpTimedWaitDelay,(DWORD值)十进制,30
说明:同时使用这两个参数,集群时Windows服务器一定要设置。
· MaxUserPort:确定在应用程序从系统请求可用用户端口时,TCP/IP 可指定的最高端口号。缺省值:无。建议值:十进制 65534。
· TcpTimedWaitDelay:减少此条目的值允许 TCP/IP 更快地释放已关闭的连接,为新连接提供更多资源。如果运行的应用程序需要快速释放和创建新连接,而且由于 TIME_WAIT 中存在很多连接,导致低吞吐量,则调整此参数。缺省值:240,它将等待时间设置为 240 秒(4 分钟)。 建议值:设置为 30 秒。停止并重新启动系统。
三、Oracle数据库设置:
1、Oracle线程数设置:
通过设置以下语句查询和设置Oracle的线程数:
--查询最大线程连接数 :
show parameter processes
--更改线程连接数 :
alter system set processes=500 scope=spfile;
设置完成后重启数据库。启动后通过查询最大线程连接数(showparameter processes)查看是否设置正确并生效。
说明:默认是150个,这个量并非越大越好,需要根据硬件性能来设置。
优化实例:
一、Weblogic10.3_Windows集群布署
这是以两台装有Window2003—64bit的8核CPU、8G内存的服务器做的集群布署,用的都是Weblogic10.3和jdk-6u23-windows-x64。其中一台机器安装的管理服务和受管理服务,另外一台安装的代理服务和受管理服务。
1、机器配置:
序号 |
硬件型号 |
安装软件 |
IP |
用途说明 |
1 |
HP DL380G5 PC服务器 |
WIN2003-64位操作系统:8CPU、8G内存 Weblogic10.3平台, JDK:sun23-64bit |
192.168.0.303 |
Weblogic应用服务器 |
2 |
HP DL380G5 PC服务器 |
WIN2003-64位操作系统:8CPU、8G内存 Weblogic10.3平台, JDK:sun23-64bit |
192.168.0.307 |
Weblogic应用服务器 |
3 |
IBM SyStem P55A AIX |
UNIX操作系统 ORACLE10G数据库 |
192.168.0.35 |
数据存储服务器 |
4 |
H3C S1024R 交换机 |
|
|
|
5 |
DELL OPTIPLEX 760 PC机 |
IE6.0 LoadRunner 8.1 |
192.168.0.205 |
测试工作站 |
2、Weblogic优化设置:
服务器类型 |
系统软件 |
参数类型 |
参数值 |
备注 |
数据库服务器 |
Oracle |
最大连接数 |
500 |
默认值150 |
应用服务器 |
Windows |
注册表修改 |
最大用户数:20000 |
|
TCP延迟:30S |
||||
Weblogic |
数据库连接池 |
初始连接数:20 |
默认:1 |
|
最大连接数:50 |
默认:15 |
|||
步长:5 |
默认:1 |
|||
积压数 |
300 |
采用默认值 |
||
登录超时时间 |
5000mS |
采用默认值 |
||
JDK内存设置 |
最小内存:2048M |
默认为256M~512M |
||
最大内存:2048M |
二、Weblogic10.3_Windows单机布署
这是以一台装有Window2003—64bit的8核CPU、8G内存的服务器做的Weblogic布署,用的是Weblogic10.3和jdk-6u23-windows-x64。
1、机器配置:
序号 |
硬件型号 |
安装软件 |
IP |
用途说明 |
1. |
HP DL380G5 PC服务器 |
WIN2003-64位操作系统:8CPU、8G内存 Weblogic10平台, JDK:sun23-64bit |
192.168.0.302 |
Weblogic应用服务器 |
2. |
IBM SyStem P55A AIX |
UNIX操作系统 ORACLE10G数据库 |
192.168.0.35 |
数据存储服务器 |
3. |
H3C S1024R 交换机 |
|
|
|
4. |
DELL OPTIPLEX 760 PC机 |
IE6.0 LoadRunner 8.1 |
192.168.0.205 |
测试工作站 |
2、Weblogic优化设置:
服务器类型 |
系统软件 |
参数类型 |
参数值 |
备注 |
数据库服务器 |
Oracle |
最大连接数 |
500 |
默认值150 |
应用服务器 |
Windows |
注册表修改 |
最大用户数:20000 |
|
TCP延迟:30S |
||||
Weblogic |
数据库连接池 |
初始连接数:50 |
默认:1 |
|
最大连接数:100 |
默认:15 |
|||
步长:5 |
默认:1 |
|||
积压数 |
300 |
默认 |
||
登录超时时间 |
5000mS |
默认 |
||
JDK内存设置 |
最小内存:3072M |
默认为256M~512M |
||
最大内存:4096M |
||||
线程数 |
最小线程:2500 |
默认没有参数 |
||
最大线程:5000 |
Weblogic调优