Weblogic启动速度修改

合集下载

WebLogic 系统调优操作指导书

WebLogic 系统调优操作指导书

WebLogic Server 8.1调优操作指导书拟制: Prepared by 杨机智59949日期:Date2006-11-07审核: Reviewed by 日期:Date审核: Reviewed by 日期:Date批准: Granted by日期:Date华为技术有限公司Huawei Technologies Co., Ltd.版权所有侵权必究All rights reserved修订记录Revision record目录Table of Contents1操作系统调优 (8)1.1操作系统调整 (8)1.2Linux相关参数调整 (8)1.3Windows相关参数调整 (9)2应用服务器调优 (9)2.1JVM调优 (9)2.1.1垃圾收集和堆大小 (9)2.1.2jRockit调优 (10)2.2Server调优 (11)2.2.1尽量使用本地I/O库 (11)2.2.2调整默认执行线程数 (12)2.2.3调整连接参数 (13)2.2.4创建新的执行队列 (14)2.3JDBC调优 (15)2.3.1调整连接池配置 (15)3性能监控和性能分析 (17)3.1性能瓶颈 (17)3.2操作系统监控 (17)3.3数据库监控 (18)3.4WebLogic监控 (19)3.4.1JVM监控 (19)3.4.2Console监控 (19)4常见问题解决方法 (20)4.1Apache出现连接拒绝 (20)4.1.1现象描述 (20)4.1.2原因分析 (20)4.1.3处理方法 (20)4.2启动Apache提示MaxClients超过服务器最大限制 (21)4.2.1现象描述 (21)4.2.2原因分析 (21)4.2.3处理方法 (21)表目录List of Tables表1 XX表Table 1 XX (21)图目录List of Figures图1 XX图Figure 1 XX (22)WebLogic Server 8.1调优操作指导书关键词Key words:WebLogic Server,调优摘要Abstract:本文介绍了如何进行WebLogic Server 8.1调优缩略语清单List of abbreviations:1 操作系统调优1.1 操作系统调整交换区(swap area)的大小。

Weblogic参数调优

Weblogic参数调优

Weblogic参数调优一、调优背景:应银监会总会需求,需对银监会派出机构客户风险监测预警系统进行1轮剔除网络环境的性能测试(在山东试运行阶段的性能测试,由于网络瓶颈较大,造成性能指标较差)。

由于时间紧张,只是匆忙搭建了测试环境,Weblogic、DB2等的参数均是默认设置,并未进行任何调优。

默认设置在系统使用人数不多的情况性能尚可,但当使用人数较多,或者进行大并发的性能测试时,则会显得捉襟见肘。

如:在本次测试过程中,在集团关联处的50并发,就会造成系统崩溃。

如图可见:在集团关联并发50的时候,队列长度已经高达103,空闲线程数已经为0,同时吞吐量极低,由此造成系统崩溃。

通过分析,查找到原因在于:JVM分配内存过少;线程池、连接池里分配的线程数以及容量过低,通过调优后解决了问题二、调优思路:一般来讲,J2EE应用架构环境下的系统调优,首先我们一般会从应用程序出发,去审核代码,做到代码级的优化,然后再调整应用服务器(BEA WebLogic8.1)和数据库(DB2)的参数,最后当然是调整操作系统和网络的性能(包括硬件升级)。

这是一种MDA的先进做法。

诚然,在许多项目中,不可能完全按照这个思路来做,我们把目标首先定位在应用系统所在的应用服务器(BEA WebLogic8.1)上,通过对BEA WebLogic8.1的参数进行设置,使WebLogic8.1能够在最优化的环境中去运行其系统,然后对DB2数据的参数进行优化设置,最后进行性能测试再找出导致性能瓶颈所在的SQL代码或JA V A程序,考量其修改的可行性,并进行最终问题优先级认定,与瓶颈模块进行协商解决性能问题。

当然,大多数时候都出现了性能问题后才想到调优,而且一般都是先进行系统参数调整,实在解决不了才会对代码进行检查。

实际上,我们应当将代码级的调优放在应用设计时来做,测试生产时修改代码将是一件极其痛苦的事情。

而本次测试由于时间紧张,只对Weblogic进行了参数调优,现将调优步骤进行说明:1.JVM调整:(1)首先,在D:\bea\user_projects\domains\mydomain下用编译模式打开startWebLogic.cmd,查找代码:call "%WL_HOME%\common\bin\commEnv.cmd"(windows)或者call "%WL_HOME%\common\bin\commEnv.sh"(linux/aix)找到后,在相应路径用编译模式打开该文件:(2)接着要弄清楚JDK厂商(是bea,还是sun、IBM等)set JA V A_VENDOR=BEA(此处说明应用的为BEA的JDK)(3)之后查找weblgoic运行模式:set PRODUCTION_MODE=默认是开发模式(线程计数默认为15)即为空,在上线时,应将其改为产品模式(线程计数默认为25):set PRODUCTION_MODE=ture(4)然后需修改分配给JVM的内存(默认为96M):因已确定厂商为BEA,运行模式为产品模式,所以找到::beaif "%PRODUCTION_MODE%" == "true" goto bea_prod_modeset JA V A_VM=-jrockitset MEM_ARGS=-Xms1024m -Xmx1024mset JA V A_OPTIONS=%JA V A_OPTIONS% -Xverify:nonegoto continue:bea_prod_modeset JA V A_VM=-jrockitset MEM_ARGS=-Xms1024m -Xmx1024m(此处即为分配给JVM的内存范围)goto continue可根据系统需要,修改分配的内存数注:如为32位的操作系统,则最大支持分配2G内存2.线程池调整:打开Weblogic,在路径:mydomain->服务器->myserver->右键打开“查看执行队列” weblogic.kernel.Default调整如下指标:(1) 线程计数—分配给此队列的线程数,建议值为: 100(2) 线程数增加—在出现溢出时,要添加到队列中的线程数,建议值为: 50(3) 最大线程数—此队列可以拥有的最大线程数。

linux服务weblogic启动和参数修改

linux服务weblogic启动和参数修改
<self-tuning-thread-pool-size-max>500</self-tuning-thread-pool-size-max>
<listen-port>7923</listen-port>
<listen-address></listen-address>
</server>
经过测试,以上两种方法适合weblogic9,10,11g
MEM_ARGS="-Xms1024m -Xmx1024m -XX:MaxPermSize=256m"
weblogic 9开始使用了线程自调优技术。通过以下方法设置,可以指定默认线程的最大最小值。
方法一:修改启动脚本参数
在启动脚本中,增加如下参数
%JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS%
nohup ./startWebLogic.sh > nohup.log &
./stopWebLogic.sh
ps -ef |grep start 查询后台进程
ps -ef |grep java
kill -9 pid值
nohup ./startWebLogic.sh >nohup.out &
tail -f
weblogic9 搭建环境时:data sources下一定要把Targets下边的Servers给要修改如下(注意OP文件需要是weblogic的,开发一般给的是tomcat的)
CLASSPATH="${WL_HOME}/server/lib/xerces2.6.2.jar:${WEBLOGIC_CLASSPATH}:${POINTBASE_CLASSPATH}:${JAVA_HOME}/jre/lib/rt.jar:${WL_HOME}/server/lib/webservices.jar:${CLASSPATH}"

Weblogic性能调优经验

Weblogic性能调优经验

Weblogic性能调优经验WEBLOGIC性能调优方案1.查看当前线程池大小:登录WEBLOGIC控制台,选择服务器-某服务器-监视-性能,可查看到当前最大线程数量。

由于WEBLOGIC9取消了在页面进行调整线程大小的功能,需要在后台进行修改。

2.修改线程池大小:进入服务器的目录D:\bea\user_projects\domains\base_domain\config,使用编辑器打开config.xml文件,找到如下段落:<server><name>AdminServer</name><listen-address>168.5.130.34</listen-address>z</server>在</server>上面添加如下两行:默认10<self-tuning-thread-pool-size-min>1000</self-tuning-thread-pool-siz e-min><self-tuning-thread-pool-size-max>1000</self-tuning-thread-pool-siz e-max>添加后的结果:<server><name>AdminServer</name><listen-address>168.5.130.34</listen-address><self-tuning-thread-pool-size-min>1000</self-tuning-thread-pool-size-min><self-tuning-thread-pool-size-max>1000</self-tuning-thread-pool-size-max></server>按上面的步骤,继续找到ProxyServer,以及所有MANAGE受管机的<server>段落,分别添加上面的两行语句。

WebLogic调优

WebLogic调优

WebLogic调优以下内容基于Linux OSOSOS需要调整的参数比较少,主要是网络参数、文件打开数限制参数。

调整Linux系统使用sysctl命令修改TCP参数等待时间间隔:sysctl -w ip_ct_tcp_timeout_time_wait=60;调整打开文件的最大数:在/etc/sysctl.conf文件中,添加:Fs.file-max=65535,然后运行sysctl –p;调整打开文件描述符最大数为8192:在/etc/security/limits.conf文件,添加:WebLogic hard nofile 8192(仅针对WebLogic用户),然后在WebLogic启动文件里运行ulimit-n 8192激活设置。

OS全局打开文件数限制:修改 /etc/sysctl.conf,增加fs.file-max = XXXX,不同版本OS有不同的限制,在数据库服务器或应用服务器中必须调大。

如何查看一个进程已打开文件数:Lsof -p pid 查看进程打开文件,列出每个文件Lsof -u XXX 查看用户打开文件个数lsof -p pid| wc -l计算进程打开文件个数(wc 计算行数 -l或字数 -w、字符数-m或字节数-c)JDKJDK参数一般分成以下几类:●堆设置-Xms -Xmx (SUN设置HEAP的初始与最大值,IBM JDK 建议不相同)SUN JDK专用-XX:MaxPermSize=256m ,持久代大小(CLASS元数据存储区,不会被GC),此值默认比较小(4M),需要调大,否则抛ng.OutOfMemoryError: PermGenspace。

尤其对JSP、动态编译类较多的系统。

IBM JDK没有MaxPermSize参数,这个区域就在HEAP底部。

●GC设置SUN JDK-XX:+UseParallelGC或-XX:+UseParallelOldGC,利用所有可用CPU进行并行GC,大吞吐量,PAUSE较长-XX:+UseConcMarkSweepGC,并发GC,后台Thread,可以减少Pause时间,但Thread本身有开销而降低吞吐量IBM JDK 见下表●GC统计信息设置-verbose:gc 打印GC过程,时间等●并发收集器设置SUN JDK-XX:ParallelGCThreads=N ,并发GC的线程数,一般与CPU个数相同。

weblogic 性能调优

weblogic 性能调优
这个最大值也可以理解系统并发操作的最大值,如果有等待的话可以适当再提高

建议值:200
b) 设定执行队列的溢出条件;
通过启动管理控制台,在域(如:mydomain)> 服务器 > server实例(如:myserver)> Execute Queue > weblogic.kernel.Defalt > 配置下面几项:
队列长度:此值表示执行队列中可容纳的最大请求数,默认值是65536,不要手动改变此值。
通过启动管理控制台,在域(如:mydomain)> 服务器 > server实例(如:myserver)>配置 > 调整下可配置“接受预备连接”。
5、减少动态jsp载入次数
通过启动管理控制台,在域(如:mydomain)> 部署 >web应用程序模块 > 配置 > 描述符 > 下可配置
Servlet 重新加载检查(秒): 180
weblogic 性能调优:
1、找到startWebLogic.cmd文件,在
%JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% =%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy="%WL_HOME%\server\lib\weblogic.policy" weblogic.Server
3、调优执行队列线程;
a) 修改默认执行线程数
通过启动管理控制台,在域(如:mydomain)> 服务器 > server实例(如:myserver)> 监视 > 性能中监控最大负载时执行队列的吞吐量和队列中的等待请求数,据此确定理想的数值。

WebLogic调优参数配置

WebLogic调优参数配置

WebLogic调优参数配置WebLogic 配置文件(config.xml)包含了大量很直观的与性能有关的参数,能通过配置环境与应用程序得到很好的优化。

基于系统的需要调整这些参数不仅能改善单个点的性能,而且能提高整个应用程序性能的可衡量性。

试着采用下列WebLogic配置方法,或许能使你的系统达到最佳状态:一. 修改运行队列线程数的值。

在WebLogic 中队列元素的线程数等于同时占用运行队列的应用程序的数目。

当任务加入一个WebLogic 实例,它就被放到执行队列中,然后分配给任务一个线程来运行。

线程消耗资源,因此要小心处理这个属性——增加不需要的值,会降低性能。

二. 如果可能,使用自带的性能包(NativeIOEnabled=true)。

三. 使用特定的应用程序执行队列。

四. 使用JDBC连接池时,修改下列属性:●驱动名称:使用小的驱动或者jDriver。

●初始容量:设为与最大容量相同的值。

●最大容量:其值至少应与线程数相同。

五. 把连接池的大小设为与执行队列的线程数相同。

六. 设置缓冲。

七. 为Servlet和JSP使用多个执行队列。

八. 改变JSP默认的Java编译器,javac 比jikes或sj要慢。

提要:为 WebLogic 启动设置 Java 参数。

设置与性能有关的配置参数。

调整开发与产品模式默认值。

使用WebLogic “自有的IO ”性能包。

优化默认执行队列线程。

优化连接缓存。

如何提高 JDBC 连接池的性能。

设置 Java 编译器。

使用 WebLogic 集群提高性能。

监视 WebLogic 域。

一、为 WebLogic 启动设置 Java 参数只要启动 WebLogic ,就必须指定 Java 参数,简单来说,通过 WebLogic.Server 域的命令行就可以完成,不过,由于这样启动的过程冗长并且易于出错, BEA 公司推荐你把这个命令写进脚本里。

为了简化这个过程,你可以修改样例脚本里的默认值,样例脚本是提供 WebLogic 启动服务器的。

weblogic优化指南

weblogic优化指南

优化WebLogic一、为WebLogic启动设置Java参数垃圾收集(GC)是指JVM释放Java堆中不再使用的对象所占用的内存的过程,而Java堆(Heap)是指Java应用程序对象生存的空间。

堆大小决定了GC的频度和时间。

堆越大,GC频度低,速度慢。

堆越小,GC频度高,速度快。

所以GC和堆大小是一组矛盾。

为了获取理想的Heap堆大小,需要使用-verbosegc参数(Sun jdk: -Xloggc:<file>)以打开详细的GC输出。

分析GC的频度和时间,结合应用最大负载所需内存情况,得出堆的大小。

通常情况下,我们建议使用可用内存(除操作系统和其他应用程序占用之外的内存)70-80%,为避免堆大小调整引起的开销,设置内存堆的最小值等于最大值即:-Xms=-Xmx。

而为了防止内存溢出,建议在生产环境堆大小至少为256M(Platform至少512M),实际环境中512M~1G左右性能最佳,2G以上是不可取的,在调整内存时可能需要调整核心参数进程的允许最大内存数。

对于sun 和hp的jvm,永久域太小(默认4M)也可能造成内存溢出,应增加参-XX:MaxPermSize=128m。

建议设置临时域-Xmn的大小为-Xmx的1/4~1/3, SurvivorRatio为8堆栈内存优化,修改配置文件:WL_HOME=C:\bea\weblogic81 "%WL_HOME%\common\bin\commEnv.cmd":bea#如果采用的上bea的JDK# JVM Heap(堆内存)最小尺寸为96M,最大尺寸为256Mset MEM_ARGS=-Xms96m -Xmx256m:sun#如果采用的是sun的JDK# JVM Heap(堆内存)最小尺寸为32M,最大尺寸为200M#公共变量对象的内存限制: PermSize:最小尺寸, MaxPermSize :最大允许分配尺寸set MEM_ARGS=-Xms32m -Xmx200m -XX:MaxPermSize=128m监视堆栈使用情况:下载JRockit JDK,该JDK已经自带了JRockit Mission Control工具,目前好像还没有单独下载JRockit Mission Control的地方,于JRockit JDK进行了绑定下载;在C:\bea\jrockit81sp5_142_08\console目录里面运行:C:\bea\jrockit81sp5_142_08\bin\java –Xmanagement -jar ManagementConsole.jar 如何监控weblogic呢?修改weblogic启动脚本startWebLogic.cmd,在里面加入-Xmanagement启动参数:%JAVA_HOME%\bin\java -Xmanagement %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% =%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy="%WL_HOME%\server\lib\weblogic.policy" weblogic.Server二、设置与性能有关的配置参数在一个WebLogic域中,配置文件(config.xml)位于与管理服务器通信的机器里,提供WebLogic MBean的长期存储。

weblogic调优

weblogic调优
具体如下:
%JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS%
-Ddefault.client.encoding=GBK -Dfile.encoding=GBK nguage=Zh -Duser.region=CN
修改应用程序服务器->进程定义->JVM虚拟机
设置最大最小内存,并的用户数量,进行设置,
数据库的最大连接数不能小于高峰时期同一时间连接用户的数量。
(1)weblogic
Services->jdbc-->Connection Pools-->centerconn-->connections
(2)websphere
修改应用程序服务器->进程定义->JVM虚拟机->一般自变量定义
添加-Ddefault.client.encoding=GBK -Dfile.encoding=GBK nguage=Zh -Duser.region=CN
二、内存调优
通过分析运行日志,在中间件服务器运行时,可找到管理信息->日志分析
一、中文问题
如果操作系统不支持中文,应首先使操作系统支持中文。
附录中提供为Aix安装中文补丁包的步骤,其他操作系统请参照相关资料。
(1)weblogic
修改startweblogic.sh(startweblogic.cmd)中启动server的命令,重新设置虚拟机参数
添加-Ddefault.client.encoding=GBK -Dfile.encoding=GBK nguage=Zh -Duser.region=CN
最大使用内存:对于UNIX而言,一般不应超过物理内存的75%;

weblogic 优化

weblogic 优化

优化WebLogic 服务器性能参数WebLogic 配置文件(config.xml)包含了大量很直观的与性能有关的参数,能通过配置环境与应用程序得到很好的优化。

基于系统的需要调整这些参数不仅能改善单个点的性能,而且能提高整个应用程序性能的可衡量性。

试着采用下列WebLogic配置方法,或许能使你的系统达到最佳状态:一修改运行队列线程数的值。

在WebLogic 中队列元素的线程数等于同时占用运行队列的应用程序的数目。

当任务加入一个WebLogic 实例,它就被放到执行队列中,然后分配给任务一个线程来运行。

线程消耗资源,因此要小心处理这个属性——增加不需要的值,会降低性能。

二,如果可能,使用自带的性能包(NativeIOEnabled=true)。

三,使用特定的应用程序执行队列。

四,使用JDBC连接池时,修改下列属性:n 驱动名称:使用小的驱动或者jDriver。

n 初始容量:设为与最大容量相同的值。

n 最大容量:其值至少应与线程数相同。

五,把连接池的大小设为与执行队列的线程数相同。

六,设置缓冲。

七,为Servlet和JSP使用多个执行队列。

八,改变JSP默认的Java编译器,javac 比jikes或sj要慢。

优化WebLogic提要:n 为WebLogic 启动设置Java 参数。

n 设置与性能有关的配置参数。

n 调整开发与产品模式默认值。

n 使用WebLogic “自有的IO ”性能包。

n 优化默认执行队列线程。

n 优化连接缓存。

n 如何提高JDBC 连接池的性能。

n 设置Java 编译器。

n 使用WebLogic 集群提高性能。

n 监视WebLogic 域。

一、为WebLogic 启动设置Java 参数只要启动WebLogic ,就必须指定Java 参数,简单来说,通过WebLogic.Server 域的命令行就可以完成,不过,由于这样启动的过程冗长并且易于出错,BEA 公司推荐你把这个命令写进脚本里。

weblogic10性能优化及相关技巧

weblogic10性能优化及相关技巧

weblogic10性能优化及相关技巧WebLogic10常见性能优化及相关技巧目录一、中文字符集的加载方法 (2)二、服务启动缓慢的解决方法 (3)三、文件损坏造成无法启动服务的解决方法 (3)四、打开文件数的优化 (4)五、虚拟机内存的优化 (5)六、连接池的优化 (5)七、服务节点访问超时的优化 (8)八、服务节点访问线程数的优化 (10)九、部署应用程序的优化 (10)十、日志的优化 (11)十一、清空输出日志nohup.out的方法 (13)十二、通过管理控制台对weblogic10运行情况进行监测 (13)十三、windows下weblogic控制台运行日志输出到文件 (15) 十四、忘记weblogic管理控制台密码的处理方法 (16)一、中文字符集的加载方法加载中文字符集的必要性:1、解决某些情况下服务无法启动(启动需要读取含中文的xml)。

2、解决应用程序运行异常(程序运行需要中文字符集的支持)。

3、方便查看相关系统运行日志。

一般在linux或aix操作系统上会出现中文字符集的问题加载方法:Linux操作系统修改域目录下xxx_domain/bin/setDomainEnv.sh文件,在文件中增加内容export LANG=zh_CN.GBK例如:IBM Aix操作系统修改域目录下xxx_domain/bin/setDomainEnv.sh文件,在文件中的java_options中增加内容:-Ddefault.client.encoding=GBK -Dfile.encoding=GBK nguage=Zh -Duser.region=CN例如:注意:要使上述修改方法有效,前提是linux/Aix操作系统安装时需要安装中文字符集,系统规划时要跟硬件集成商进行说明。

二、服务启动缓慢的解决方法有些时候我们在启动应用服务的时候,启动特别慢,有时慢到需要好几个小时,这实际是JVM在Linux/Aix下的bug,是由于服务想调用一个随机函数但取不到造成的。

weblogic参数调整-古道西风的日志-网易博客

weblogic参数调整-古道西风的日志-网易博客

weblogic参数调整-古道西风的日志-网易博客weblogic参数调整java study 2009-06-08 15:11:14 阅读445 评论0 字号:大中小订阅weblogic参数设置更改内存分配参数(以内存为2G为例)将bea"weblogic81"common"bin"commENV.cmd文件中set MEM_ARGS=-Xms128m -Xmx256m内存加大,设置为:set MEM_ARGS=-Xms1024m –Xms1024m然后在服务的startWeblogic.cmd中查找call "%WL_HOME%"common"bin"commEnv.cmd",如果在这句的后面无内存参数的设置则以上面的设置为准。

如果在这句的后面加上set MEM_ARGS=-Xms1024m –Xms1024m,则以这句为准。

适当调整了BEA Weblogic的线程数大小。

weblogic server的线程数是一个比较重要的参数。

线程数指的是weblogic server的最大并发处理操作数量。

但是并不是说增加线程数就以为着能够增加性能,能够处理更多的事情。

因为线程耗费资源,不必要的线程数增加反而会降低性能。

调整线程数时,在左边菜单的myserver上点击右键,选择查看执行队列,然后点击weblogic.kernel.Default。

将“线程计数”、“最大线程数”、“最小线程数”设置为相同的数值,“线程数增加”设为0,以减少线程数增减带来的性能消耗。

Weblogic监控http://ip:端口/console,输入用户名、密码对当前的服务进行监控。

登陆后会看到平台的左边有一树目录,打开mydomain下的servers,就会看到我们要监控的服务了。

单击服务,通过Monitoring—>General—> Monitor all Active Queues对线程进行监控制。

weblogic优化

weblogic优化

WebLogic Server Performance and TuningWebLogic Server性能调整Tuning Java Virtual Machines (JVMs)调整java虚拟机Garbage Collection垃圾回收VM Heap Size and Garbage Collection虚拟机堆大小和垃圾回收java堆是java对象存活的地方。

其中存有live对象,dead对象和空闲内存。

当正运行的程序中某个对象不可达时,它就被认为是“garbage”并且准备被回收。

一个最优方法是调整垃圾回收时间在执行时间的5%之内。

java虚拟机的堆大小决定了虚拟机垃圾回收的频率和用时。

要在分析垃圾回收的时间运行时间和频率后再将对大小调整到一个可接受的比率。

如果堆设置的大了,full GC 一次就变慢,但发生频率低。

如果根据你的需要设置堆大小,则full GC一次就变快,但是发生频率高。

调整堆大小的目标是,使给定时间内weblogic server能服务的客户数最大化,与此同时,使java虚拟机花在垃圾回收上的时间最小化。

在benchmarking内为了确保性能,你可能设置很大的堆大小以确保在整个benchmark运行中都不发生垃圾回收。

如果在没有堆空间的情况下运行,你会看到如下错误:ng.OutOfMemoryError <<no stack trace available>>ng.OutOfMemoryError <<no stack trace available>> Exception in thread "main"Choosing a Garbage Collection Scheme选择垃圾回收计划根据所使用的java虚拟机,可以从几个垃圾回收计划来管理你的系统内存。

例如,某些垃圾回收计划更适合特定应用。

weblogic性能调整步骤

weblogic性能调整步骤

第三章性能调整步骤你想调整weblogic服务器的性能,并且发现服务器上的应用是个复杂而迭代的程序。

在接下来的几节为你提供了调整路线和调整要点,你能用它们来提升系统的性能。

性能调整路线下面提供的步骤提供了一个路线来帮助你通过调整你的应用环境来优化性能:1.理解你的优化目标2.估计你的优化尺度3.定位系统的瓶颈4.最小化瓶颈的影响5.完成优化目标理解你的优化目标为了确定你的优化目标,你需要去理解发布的应用和系统的环境限制。

汇总应用组件期望达到的活动级别的信息,例如:z预期的用户数量z请求的数量和大小z数据的多少和一致性z决定你的绑定的CPU利用率你绑定的CPU的使用率不应该到100%,你应该基于应用需要来决定绑定的CPU利用率,包括CPU峰值周期。

如果你的CPU利用率在平时被充分利用到100%,你没有能力去处理峰值负载。

在一个应用里,延迟敏感度和维护快速响应时间是重要的。

当服务器上有排队的处理时,吞吐量会一直不变甚至会增加,高CPU使用率(接近100%利用率)会限制响应时间。

对于这样的应用,70%--80%的CPU利用率是推荐的。

对于一个很好的无延迟敏感的应用,CPU利用率应为90%。

优化目标被约束所限制,例如z硬件和软件的配置,例如CPU的类型,磁盘的大小,磁盘的速度,足够的内存。

这里没有一个单一的准则来决定所需要的硬件。

决定硬件的类型和被要求的软件的配置去满足应用的需要的过程被称为能力计划。

能力计划要求确定你的系统优化目标和理解你的应用。

服务器硬件的能力计划应该聚焦于最大的性能要求。

更多请查看附录C-1 z在域之间互操作的能力,使用传统的系统,支持传统的数据。

z开发,实施和维护的成本。

你将使用这些信息去为你的应用环境设置实际可行的性能目标,例如在特殊硬件上的响应时间,吞吐量和负载。

度量你的性能尺度在上节你已经确定了你的性能标准,你将使用尺度的度量去决定性能的目标。

在接下来的章节里,提供了度量基本的性能尺度的信息:监控磁盘和CPU的利用率在你的应用处于高负载的情况下监控:z应用服务器(磁盘和CPU利用率)z数据库服务器(磁盘和CPU利用率)目标是获得一个点,这个点是应用服务器实现你的CPU利用率目标。

weblogic启动内存配置[最新]

weblogic启动内存配置[最新]

Weblogic 启动内存配置1、找到配置文件位置,默认路径是wlserver_10.3/common/bin/commEnv.sh2、找到commEnv.sh文件,修改此配置文件if [ "$PRODUCTION_MODE" = "true" ]; thencase $JA V A_VENDOR inBEA)JA V A_VM=-jrockitMEM_ARGS="-Xms512m -Xmx2048m";;HP)JA V A_VM=-serverMEM_ARGS="-Xms512m -Xmx2048m -XX:MaxPermSize=512m";;IBM)JA V A_VM=MEM_ARGS="-Xms512m -Xmx2048m";;Sun)JA V A_VM=-serverMEM_ARGS="-Xms512m -Xmx2048m -XX:MaxPermSize=512m";;*)JA V A_VM=MEM_ARGS="-Xms512m -Xmx2048m";;esacelsecase $JA V A_VENDOR inBEA)JA V A_VM=-jrockitMEM_ARGS="-Xms512m -Xmx2048m"JA V A_OPTIONS="${JA V A_OPTIONS} -Xverify:none";;HP)JA V A_VM=-clientMEM_ARGS="-Xms512m -Xmx2048m -XX:MaxPermSize=512m";;IBM)JA V A_VM=MEM_ARGS="-Xms512m -Xmx2048m";;Sun)JA V A_VM=-clientMEM_ARGS="-Xms512m -Xmx2048m -XX:MaxPermSize=512m"JA V A_OPTIONS="${JA V A_OPTIONS} -Xverify:none";;*)JA V A_VM=MEM_ARGS="-Xms512m -Xmx2048m";;红色标注的位置是启动时分配的内存大小,可根据实际需求进行调整。

Weblogic服务器的性能调试优化方案

Weblogic服务器的性能调试优化方案

Weblogic服务器的性能调试优化方案注:在下面做的介绍都是以Weblogic8.1为例的,其它版本的Weblogic可能会有些许不同。

1) 设置JAVA参数;a) 编辑Weblogic Server启动脚本文件;BEA_HOME\user_projects\domains\domain-name\startWebLogic.cmd(startWebLogic.sh on Unix)BEA_HOME\user_projects\domains\domain-name\startManagedWebLogic.cmd(startManage dWebLogic.sh on Unix)b) 编辑set JAVA_OPTIONS命令,如:set JAVA_OPTIONS="-Xms256m —Xmx256m;c) 保存,重启即可。

注:在WebLogic中,为了获得更好的性能,BEA公司推荐最小Java堆等于最大Java堆。

2) 开发模式vs. 产品模式;开发模式和产品模式的一些参数的默认值不同,可能会对性能造成影响,下面是对性能有影响的参数列表:通过启动管理控制台,在域(如:mydomain)> 配置> 常规选择产品模式。

3) 尽量开启本地I/O;通过启动管理控制台,在域(如:mydomain)> 服务器> server实例(如:myserver)> 配置> 调整选择启用本地I/O。

注:此值也可通过手动的修改config.xml配置文件。

4) 调优执行队列线程;a) 修改默认执行线程数在这里,执行队列的线程数表示执行队列能够同时执行的操作的数量。

但此值不是设的越大越好,应该恰到好处的去设置它,太小了,执行队列中将会积累很多待处理的任务,太大了,则会消耗大量的系统资源从而影响整体的性能。

在产品模式下默认为25个执行线程。

为了设置理想的执行队列的线程数,我们可以启动管理控制台,在域(如:mydomain)> 服务器> server实例(如:myserver)> 监视> 性能中监控最大负载时执行队列的吞吐量和队列中的等待请求数,据此确定理想的数值。

WEBLOGIC启动JVM参数设置经验

WEBLOGIC启动JVM参数设置经验

WEBLOGIC启动JVM参数设置经验2011-11-01 08:41:46分类:Linux1. 堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。

32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。

我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。

典型设置:o java -Xmx3550m -Xms3550m -Xmn2g -Xss128k-Xmx3550m:设置JVM最大可用内存为3550M。

-Xms3550m:设置JVM促使内存为3550m。

此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。

-Xmn2g:设置年轻代大小为2G。

整个JVM内存大小=年轻代大小 + 年老代大小 + 持久代大小。

持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小。

此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。

-Xss128k:设置每个线程的堆栈大小。

JDK5.0以后每个线程堆栈大小为1M,以前每个线程堆栈大小为256K。

更具应用的线程所需内存大小进行调整。

在相同物理内存下,减小这个值能生成更多的线程。

但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右。

o java -Xmx3550m -Xms3550m -Xss128k -XX:NewRatio=4 -XX:SurvivorRatio=4 -XX:MaxPermSize=16m -XX:MaxTenuringThreshold=0-XX:NewRatio=4:设置年轻代(包括Eden和两个Survivor区)与年老代的比值(除去持久代)。

设置为4,则年轻代与年老代所占比值为1:4,年轻代占整个堆栈的1/5-XX:SurvivorRatio=4:设置年轻代中Eden区与Survivor区的大小比值。

linux中的weblogic性能调优

linux中的weblogic性能调优

Linux中的Weblogic性能测试调整一.操作系统参数调整1.linux TCP连接数调整通过命令:ulimit –n 查看当前最大TCP连接数,这表示当前用户的每个进程最多允许同时打开多少个文件。

一般系统默认为1024,在并发量大的情况下肯定不够用。

修改此限制的最简单办法:ulimit –n <file_num> 设置单一进程允许打开的最大文件数。

如果系统回显类似于“Operation not permitted”之类的话,说明修改失败,需要修改系统对该用户打开文件数的软限制或硬限制。

修改软限制或硬限制:修改/etc/security/limits.conf文件,在文件中添加如下行:* soft nofile 10240* hard nofile 10240表示修改所有用户的限制,也可以用指定用户名替代。

修改/etc/pam.d/login文件,在文件中添加如下行:session required /lib/security/pam_limits.so查看Linux系统级的最大打开文件数限制:cat /proc/sys/fs/file-max2.修改网络内核对TCP连接的有关限制端口范围:修改/etc/sysctl.conf文件,在文件中添加如下行:net.ipv4.ip_local_port_range = 1024 65535另外,有时无法建立TCP连接的原因可能是因为Linux网络内核的IP_TABLE防火墙对最大跟踪的TCP连接数有限制修改/etc/sysctl.conf文件,在文件中添加如下行:net.ipv4.ip_conntrack_max = 10240这表明将系统对最大跟踪的TCP连接数限制设置为10240。

请注意,此限制值要尽量小,以节省对内核内存的占用。

3.其他参数调整在/etc/sysctl.conf文件中增加如下参数,进行系统参数调整net.core.rmem_default=128388607 默认的TCP数据接收缓冲net.core.wmem_default=128388607 默认的TCP数据发送缓冲net.core.rmem_max=128388607net.core.wmem_max=128388607net.ipv4.tcp_rmem=8196 128388607 128388607 最小默认最大net.ipv4.tcp_wmem=8196 128388607 128388607net.ipv4.tcp_keepalive_time=1800tcp_keepalive_time 值控制TCP/IP 尝试验证空闲连接是否完好的频率。

WebLogic Server 性能及调优-调优 WebLogic Server

WebLogic Server 性能及调优-调优 WebLogic Server

WebLogic Server 性能及调整-调整WebLogic Server以下部分描述如何调整WebLogic Server 以满足应用程序需要。

∙设置启动WebLogic Server 的Java 参数∙开发与生产模式的默认调整值∙线程管理∙调整网络I/O∙设置编译器选项∙使用WebLogic Server 群集提高性能∙监视WebLogic Server 域设置启动WebLogic Server 的Java 参数无论何时启动WebLogic Server,都必须指定Java 参数。

为了便于调用,可以使用weblogic.Server 命令从命令行完成这一操作。

但是,因为从命令行启动WebLogic Server 所需的参数可能非常冗长并且易于出错,所以BEA 建议将此命令组合到脚本中。

为简化这一过程,可以在启动WebLogic Server 时WebLogic 分发附带的示例脚步中修改默认值,如为WebLogic Server 实例指定Java 选项中所述。

如果已使用配置向导创建域,则WebLogic 启动脚本位于您指定域的domain-name目录中。

默认情况下,此目录是BEA_HOME\user_projects\domain\domain-name,其中BEA_HOME是包含产品安装的目录,domain-name是由选定配置模板定义的域目录的名称。

有关使用Configuration Wizard 创建域的详细信息,请参阅使用Configuration Wizard 创建域。

需要在这些脚本中修改某些默认Java 值才能满足您的环境和应用程序的需要。

这些文件中重要的性能调整参数是JA V A_HOME 参数和Java 堆大小参数:∙将变量JA V A_HOME 的值更改为JDK 的位置。

例如:set JA V A_HOME=C:\bea\jdk150_03∙为得到更高性能的吞吐量,可将最小Java 堆大小设置成等于最大堆大小。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档