weblogic的相关资料文档:
优化说明
一、Weblogic服务程序设置
1、设置JDK内存
修改weblogic\user_projects\domain\bin下的seDomainEnvNaNd文件:
修改前:
If”%JAVA_VENDOR%”=”Sun”(
SetWLS_MEM_ARGS_64BIT=-Xms256m –Xmx512m
Set WLS_MEM_ARGS_32BIT=-Xms256m–Xmx512m
)else(
Set WLS_MEM_ARGS_64BIT=-Xms512m –Xmx512m
Set WLS_MEM_ARGS_64BIT=-Xms512m –Xmx512m
)
SetMEM_PERM_SIZE_32BIT=-XX:PermSize=48m
SetMEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=128m
修改后:
If”%JAVA_VENDOR%”=”Sun”(
SetWLS_MEM_ARGS_64BIT=-Xms512m –Xmx1024m
SetWLS_MEM_ARGS_32BIT=- Xms512m –Xmx1024m
)else(
Set WLS_MEM_ARGS_64BIT=-Xms1024m –Xmx1024m
Set WLS_MEM_ARGS_64BIT=-Xms1024m –Xmx1024m
)
SetMEM_PERM_SIZE_32BIT=-XX:PermSize=128m
SetMEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=256m
说明:红色字体为修改的内容,具体修改值根据实际内存确定
l-Xmx3550m:设置JVM最大堆内存为3550M。
l-Xms3550m:设置JVM初始堆内存为3550M。此值可以设置于-Xm相同,以避免每次JVM动态分配内存所浪费的时间。
l-XX:PermSize=256M:设置堆内存持久代初始值为256。(貌似是Eclipse等IDE的初始化参数)
l-XX:MaxPermSize=512M:设置持久代最大值为512M
32位操作JDK内存系统:最大可这种1.5G,如果设置过大,会导致服务无法启动
64位操作JDK内存系统:最大设置为物理内存的60-80%
2、设置线程数:
修改weblogic\user_projects\domains\base_domain\bin下的setDomainEnvNaNd中在JAVA_OPTIONS中添加如下:
SetJAVA_OPTIONS=%JAVA_OPTIONS% -Dweblogic.threadpool.MinPoolSize=2000
SetJAVA_OPTIONS=%JAVA_OPTIONS% -Dweblogic.threadpool.MaxPoolSize=4000
说明:
JDK5.0以后每个线程栈大小为1M,但是操作系统对一个进程内的线程数还是有限制的,不能无限生成。32为朝鲜系统根据JVM最大堆内存设置;64为操作系统经验值在3000-5000左右。
3、Weblogic数据库连接池连接数设置:
受Oracle数据库连接数的影响,可以参照同一时间连接数据库的用户数量进行设置,数据库库的最大连接数不能小于高峰时期同一时间连接用户的数量。点击数据源,进入后选择连接词:
初始容量:20
最大容量:50
容量增长:5
说明:
l设置前得设置数据库的最大并发线程数(下面有介绍Oracle数据库线程数设置方法),因为weblogic节点的连接池最大连接数之和不能大于数据库的最大线程数。
l初始容量:要在创建连接池时创建的物理连接数。如果无法创建这一数量的连接,创建此连接池的操作将会失败。此连接数也是连接池将保持的最小可用物理连接数。
l最大容量:此连接池可用容纳的最大物理连接数。
l容量增长:将新连接添加到连接池是创建的连接数。不再有可用的物理连接来满足连接请求时,WebLogicServer会创建该数量的附加物理连接并将它们添加到连接池中。MBean属性(不适用于应用程序模块):JDBCConnectionPoolParamsBean.CapacityIncrement。
4、WebLogic的服务设置(配置\优化)
接受积压:300
登陆超时:5000
说明:
l接受积压:对于此服务器的常规和SSL端口,应该允许的新TCP连接请求的积压数量。将积压设置为0可用房子此服务器接受某些操作系统上的所有传入连接。MBean属性:ServerMBean.AcceptBacklog。最小值:0
l登陆超时:此服务器的默认常规(非SSL)监听端口的登录超时。这是允许建立新连接的最长时间。如果值为0,表示无最大值。MBean属性:ServerMBean.LoginTimeoutMillis最小值:0。最大值100000。安全值:5000
二、Windouws服务器设置:
1、修改最高端口号和TCP/IP释放连接时间:
在注册表HKEY_LOCAL_MACHINE\SYSEM\Controlset\Services\Tcpip\Parameters下加入新键值:
MaxUserPort,(Dword值)十进制,65534
TcpTimedWaitDelay,(DWORD值)十进制,30
说明:同时使用这两个参数,集群时Windows服务器一定要设置。
lMaxUserPOrt:确定在应用程序从系统请求可用用户端口时,TCP/IP可指定的最高端口号。缺省值:无。建议值:十进制65534.
lTCPTimedWaitDelay:减少此条目的值允许TCP/IP更快的释放已关闭的连接,而且由于TIME_WAIT中存在很多连接,导致地吞吐量,则调整此参数。缺省值:240,它将等待240秒(4分钟)。建议值:设置为30秒。停止并重新启动系统。
三、Oracle数据库设置:
1、Oracle线程数设置:
通过设置一下语句查询和设置Oracle的线程数:
--查询最大线程连接数:
Show parameter processes
--更改线程连接数:
Alter system set processes=500 scope=spfile;
设置完成后重启数据库。起点年过后通过查询最大线程连接数(show parameter proccsses)查看是否设置正确并生效。
说明:默认是150个,这个量并非越大越好,需要根据硬件性能来设置。
优化实例:
一、Weblogic10.3_Windows集群部署
这是以两台装有Windows2003-64bit的8核CPU、8G内存的服务器做的集群部署,用的都是Weblogic10.3和JDK-6u23-windows-x64。其中一台机器安装的管理服务和受管理服务,另外一台安装的代理服务和受管理服务。
1、机器配置:序号硬件型号安装软件IP用途说明
1HP DL380G5 PC服务器WIN2003-64位操作系统:8CPU、8G内存
Weblogic10.3平台,JDK:sun23-64bit192.168.0.303Weblogic应用服务器
2HP DL380G5 PC服务器WIN2003-64位操作系统:8CPU、8G内存
Weblogic10.3平台,JDK:sun23-64bit192.168.0.307Weblogic应用服务器
3IBM system P55A AIXUNIX操作系统,ORACLE 10G数据库192.168.0.35数据存储服务器
4H3C S1024R 交换机
5DELL OPTIPLEX 760 PC机IE6.0
LoadRunner8.1192.168.0.205测试工作站
2、Webloic优化设置:服务类型系统软件参数类型参数值备注
数据库服务器Oracle最大连接数500默认值150
应用服务器Windows注册表修改最大用户数:20000
TCP延迟:30S
Weblogic数据库连接池初始连接数:20默认:1
最大连接数:50默认15
步长:5默认1
积压数300采用默认值
登陆超时时间5000ms采用默认值
JDK内存设置最小内存:2048M
最大内存:2048M默认为:256M~512M
二、Weblogic10.3_Windows单机部署
这是以一台装有Windows2003-64bit的8核CPU、8G内存的服务器做的Weblogic部署,用的都是Weblogic10.3和JDK-6u23-windows-x64。
1、机器配置:序号硬件型号安装软件IP用途说明
1HP DL380G5 PC服务器WIN2003-64位操作系统:8CPU、8G内存
Weblogic10.3平台,JDK:sun23-64bit192.168.0.302Weblogic应用服务器
3IBM system P55A AIXUNIX操作系统,ORACLE 10G数据库192.168.0.35数据存储服务器
4H3C S1024R 交换机
5DELL OPTIPLEX 760 PC机IE6.0
LoadRunner8.1192.168.0.205测试工作站
2、Webloic优化设置:服务类型系统软件参数类型参数值备注
数据库服务器Oracle最大连接数500默认值150
应用服务器Windows注册表修改最大用户数:20000
TCP延迟:30S
Weblogic数据库连接池初始连接数:50默认:1
最大连接数:100默认15
步长:5默认1
积压数300采用默认值
登陆超时时间5000ms采用默认值
JDK内存设置最小内存:3072M
最大内存:4096M默认为:256M~512M
线程数最小线程:2500
最大线程:5000默认没有参数