2010-02-0415:51
主要内容
•1、WebLogic服务的监控
•2、WebLogic性能优化
•3、UNIX操作命令介绍
WebLogic服务的监控
•WebLogic的控制台console对内存的监控
•Console-->server-->myserver-->右边窗口Mornitoring-->Performance
WebLogic服务的监控
•IdleThreads空闲线程数
这个值不能为0,否则意味着系统无线程可用,有死机的危险.
•QueueLength等待队列的长度
当IdleThreads的值为0时,QueueLength会出现数值。如果QueueLength维持在较高位置,且不下降时,有死机危险。但只要值在变,就说明系统还在运行.
WebLogic服务的监控
•MemoryUsage内存的使用情况
主要看垃圾回收是否频繁,在系统高负载的情况下,内存是否能达到80-90%的使用率。
WebLogic服务的监控
•查看线程的运行情况
线程是否都为空闲null状态。如不为空闲,看看是什么样的请求在占用线程。
Console-->server-->myserver-->右键菜单ViewExecuteThreads
如下图所示:
WebLogic服务的监控
•CurrentRequest当前线程正在处理的请求
•被占用的线程的情况:46、48、49
占用内容:SocketReaderRequest
WebLogic性能优化——内存
一般建议正式的域(Domain)设置为-Xms1024m-Xmx1024m,表示堆的初始大小和最大值都是1024M。
1、修改文件:Unix为startWebLogic.sh或startManagedWebLogic.sh(集群用);Windows系统为startWebLogic.cmd或startManagedWebLogic.cmd(集群用)。
•2、修改位置:为保证我们修改的参数生效,最好将内存参数命令行放在启动Java虚拟机之前。示例如下:
WebLogic性能优化——内存
•exportCLASSPATH
•MEM_ARGS="-Xms1024m-Xmx1024m-XX:NewSize=256m-XX:MaxNewSize=256m-XX:MaxPermSize=256m"
•#CallWebLogicServer
•echo"."
•echo"CLASSPATH=${CLASSPATH}"
•echo"."
•echo"PATH=${PATH}"
•echo"."
•echo"***************************************************"
•echo"*TostartWebLogicServer,useausernameand*"
•echo"*passwordassignedtoanadmin-leveluser.For*"
•echo"*serveradministration,usetheWebLogicServer*"
•echo"*consoleathttp://[hostname]:[port]/console
*" •echo"***************************************************" •${JAVA_HOME}/bin/java${JAVA_VM}${MEM_ARGS}${JAVA_OPTIONS}-Dweblogic.Name=${SERVER_NAME}-Dweblogic.ProductionModeEnabled=${PRODUCTION_MODE}-Djava.security.policy="${WL_HOME}/server/lib/weblogic.policy"weblogic.Server WebLogic性能优化——内存 •3、注意Unix与Windows的参数差别。AIX和Linux的参数值要加上双引号,Windows则不需要加。如该加的没加,不该加的加了,就会导致设置的参数不起作用,影响应用系统的性能。 •4、Unix系统下参数是否生效的检查。可以使用如下命令: ps–ef|grepjava 如果设置的参数生效,在显示的结果中会看到设置的值。如没有生效,会显示weblogic缺省的值-Xms32m–Xmx200m。 WebLogic性能优化——内存 •5、Windows下可以使用echo命令,在startWebLogic.cmd文件中查看 echo%MEM_ARGS% 会在dos窗口中输出内存设置的信息。 WebLogic性能优化——线程数 •线程数ThreadCount weblogic服务在接收到请求后,会交给后台的线程来处理,线程数决定了并发处理能力的大小。 一般以服务器的CPU个数为基准,每个CPU可负担25个线程,最好不要超过50个 •查看线程的运行情况,上面已经提到。 WebLogic性能优化——线程数 •更改线程数ThreadCount server——>右键菜单——>“ViewExecuteQueues”项查看,如下图: 点击“default”,进入修改页面: WebLogic性能优化——线程数 •修改了threadcount的值后,要点击“应用(Apply)”按钮,并重启服务后,参数才能生效。 WebLogic性能优化——连接池 •数据库连接池的初始连接数建议200或以上,如资源允许可设置得更大,但不能操作最大连接数,最大连接数设置800。 •Oracle的参数processes设置为1000或以上。 •查看连接池:console->services->ConnectionPools 修改参数 WebLogic性能优化——License •Weblogic实行License许可制度,免费下载软件使用的license是受的,各个方面都会受到。 •license文件的文件名为license.bea,位于weblogic的安装根目录下。 •文件如下: WebLogic性能优化——License • • • •cpus="unlimited" •expiration="never" •ip="any" •licensee="BEACommercialCustomer" •type="Commercial" •units="unlimited" •signature="zHCClaqBLPISe/tJfo8vPBecDtE=0MCwCFCMCc6O2WuIwtrJyR7i2IkivYYfhbug==" •/> WebLogic性能优化——License •主要检查4项:cpu、expiratioin、ip、units。 •cpu:支持服务器使用cpu的数量,一般来说服务器都是多cpu的,如果这个值为1或2,等固定的数值,会服务器性能的发挥。unlimited表明没有,是最好的。 •expiration:表明license文件的使用期限,如果是固定的日期,那么过了此日期,weblogic就不能使用了。而且license文件的内容是不能修改的,不能通过修改此值的方式实现继续使用的目的。never表明永不过期。 WebLogic性能优化——License •ip:了服务器的ip地址,其他ip地址不可以使用。any表示没有ip地址方面的。 |