资源预览内容
第1页 / 共43页
第2页 / 共43页
第3页 / 共43页
第4页 / 共43页
第5页 / 共43页
第6页 / 共43页
第7页 / 共43页
第8页 / 共43页
第9页 / 共43页
第10页 / 共43页
亲,该文档总共43页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
2002 BEA Systems, Inc. Company ConfidentialWebLogic Server 性能调优 1 管理篇Mingzi Wang BEA SE BSG *2 2002 BEA Systems, Inc.Company ConfidentialWebLogic Server性能及调整 硬件,操作系统,网络调整 JVM调整 WebLogic Server调整 WebLogic Server application调整 WebLogic Server EJB调整 调优流程及典型故障点 孤立“危险区域”3 2002 BEA Systems, Inc.Company Confidential1.硬件,操作系统,网络调整 支持平台及性能评价 操作系统调整 网络调整4 2002 BEA Systems, Inc.Company Confidential1)支持平台及性能评价 使用BEA声明支持的系统平台。 参照:dev2dev Home dev2dev WebLogic Platform WebLogic Platform Supported Configurations Supported Configurations Supported Configurations SPEC(Standard Performance Evaluation Corporation )的最新测试结果。Fourth Quarter 2003 SPECjAppServer2002 Results 几条经验为数据库设置交换区多机或多CPU能提高性能多硬盘并行操作,提高读写磁盘效率5 2002 BEA Systems, Inc.Company ConfidentialSPEC的最新测试结果6 2002 BEA Systems, Inc.Company Confidential2)操作系统调整1process and threads (HP-UX Platform)max_thread_proc 64 1024 maxfiles 60 256 File Descriptor set =4096 set rlim_fd_cur = 4096 TCP parametersndd -set /dev/tcp tcp_conn_request_max 1024 7 2002 BEA Systems, Inc.Company Confidential2)操作系统调整2交换区(swap area)的大小。交换区的大小一般在内存小于512M时,取内存的两倍,如果内存大于1G取与 实际内存相等。 也可根据以下的公式来估算: 用户数最大进程长度(512K)大应用程序数512KB 在系统持续出现某个错误时,需要重新分配系统资源。 首先,设法少量地增加资源。如问题仍存在,则以它初始值的50至100增 加资源,问题或许能够得到解决。如,出现这些信息时:“I-node Table Overflow”,“no file”或“no more process”应增加NINDOE、NFILE、NPROC等参数的值。NINDOE定义 节点活动表的大小,一般为100400,最大为16000,NFILE定义系统文件活动表的 大小,一般为100600,最大为16000,NPROC定义系统允许的最大进程数,一般取 值为503000。 磁盘的I/O操作可能是系统性能的一个瓶颈。解决方法有:1选择适当的缓冲区数目(NBUF和NHBUF),NBUF定义系统中 全部缓冲区的数量,一般为100600,最大为65536,NHBUF定义系统的混合队列, 最小为32,默认为256,最大为131072,一般与NBUF配套调整;2组织文件系统以减少 磁盘访问次数等。增加NBUF和NHBUF的值到某一点,便可提高系统的性能。一般系统 内存为4MB的系统大约可提供600K的空间给缓冲区。NHBUF的值为2的n次方,大约为 NBUF的四分之一。8 2002 BEA Systems, Inc.Company Confidential3)网络调整 网络硬件及软件当若干网络组件存在问题时,协同网管来隔离及消除问题。 LAN架构的带宽和处理能力保证Weblogic Server有足够的带宽来和架构中客户端或数据库等其他层次进 行通讯,因此本地网必须有足够的处理应用高峰的能力。 网络性能的影响9 2002 BEA Systems, Inc.Company Confidential2. JVM调整 JVM版本 堆大小和分代式垃圾收集机制 修改堆大小值 自动记载低内存状态 手动进行垃圾收集 设置JVM参数10 2002 BEA Systems, Inc.Company Confidential1) JVM版本 JVM的认证版本:dev2dev Home dev2dev WebLogic Platform WebLogic Platform Supported Configurations Supported Configurations Supported Configurations 不同JVM之间的性能差异All SPEC JBB2000 Results Published by SPEC11 2002 BEA Systems, Inc.Company Confidential2) 堆大小和分代垃圾收集机制1调整堆大小的目的:提高客户的并发访问量同时减小垃圾收集的时间分代式垃圾收集机制的目的:确定何时开始进行垃圾收集从1.3 Java HotSpot JVM中使用该机制(调整参考)。使用详细垃圾收集来决定堆大小的步骤:在最大负载情况下监控WebLogic Server的性能使用-verbosegc 选项运行详细垃圾收集,并将输出结果重定向到文件中:对Windows和Solaris: % java -ms32m -mx200m -verbosegc logfile.txt 2&1 对HPUX: -Xverbosegc:file=/tmp/gc$.out 其中$表示Java进程的进程ID。12 2002 BEA Systems, Inc.Company Confidential2) 堆大小和分代垃圾收集机制2分析以下数据点:多长时间进行一次垃圾收集一次垃圾收集花费多长时间。一次全面垃圾收集不应长于35秒。每次垃圾收集后堆的效果如何。如果堆通常是85为空,则应减小堆大小。保证堆大小比实际系统剩余物理内存空间小。否则会发生换页延迟。如果发现垃圾收集的时间太长,则应考虑减小堆大小。典型情况是应该分配给 JVM80的内存资源。如果发现还有许多剩余内存资源,则在这台机器上可以起多个实例。参考资料:The Java HotSpot Virtual MachineTuning Garbage Collection with the 1.3.1 Java TM Virtual Machine 13 2002 BEA Systems, Inc.Company Confidential3) 修改堆大小值配置堆大小的例子:$ java -XX:NewSize=128m/设置新分代式堆大小。此值应是比1MB大的1024的倍数, 并且是-XX:MaxNewSize的四分之一。如果存在大量短寿命对象,应增大此值,并同时 增加CPU数目。 -XX:MaxNewSize=128m /设置最大新分代式堆大小。此值应是比1MB大的1024的倍数 。-XX:SurvivorRatio=8 /设置新堆大小的比率。通常设为8,然后监控系统。-Xms512m /设置最小堆大小。此值应是比1MB大的1024的倍数。通常将此值与-Xmx设 置相同。-Xmx512m/设置最大堆大小。此值应是比1MB大的1024的倍数。通常将此值与-Xms设 置相同。-Dweblogic.Name=%SERVER_NAME% -Dbea.home=“C:bea“- Dweblogic.management.username=%WLS_USER%- Dweblogic.management.password=%WLS_PW%- Dweblogic.management.server=%ADMIN_URL%- Dweblogic.ProductionModeEnabled=%STARTMODE%- Djava.security.policy=“%WL_HOME%serverlibweblogic.policy“ weblogic.Server14 2002 BEA Systems, Inc.Company Confidential4) 自动记载低内存状态如果平均可用内存小于最初可用内存的5 , weblogic server会把此情况写入日至。设置方法:在WebLogic Server中设置方法:/console/中mydomain-Servers-myserver-Configuration-Tuning-Advanced Options-Memory Options15 2002 BEA Systems, Inc.Company Confidential5) 手动进行垃圾收集确保在手动垃圾收集之前进行了完全的自动垃圾收集在WebLogic Server中设置方法:/console/中mydomain-Servers-myserver-Monitoring Performance-Force garbage collection实际这是调用了JVM的 System.gc() 方法。16 2002 BEA Systems, Inc.Company Confidential6) 设置JVM参数1JVM的命令行选项有助于提高JVM的性能。所有的JVM参数是跨平台的,但在不同平台 上结果不同。因此对特定系统,应同时测试客户服务器端的JVM。Windows/UNIX平台上标准JVM参数 Windows平台: -hotspot / -classic UNIX平台: -client or hotspot / -client or -hotspotWindows/UNIX平台上非标准JVM参数 Windows平台: -Xnoclassgc/对特定类取消垃圾收集。这需要增大堆大小。 -Xrs/减少JVM对系统信号量的使用率。 UNIX平台: -Xnoclassgc/对特定类取消垃圾收集。这需要增大堆大小。 -ss/设置本地线程栈大小。17 2002 BEA Systems, Inc.Company Confidential6) 设置JVM参数2Typical Client VMsTypical Server VMsSingle CPU machinesApplication characteristics: Small heap sizesShort-lived Single user with few threads Typically not I/O boundVM spends most time translating and executing byte codes Garbage collection pauses not a problemMulti-processor serversApplication characteristics: Large heap sizes Long uptimes Many threads doing short activities Hig
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号