- 浏览: 76277 次
- 性别:
- 来自: 上海
最新评论
-
totti19841106:
alang 写道1.6的话用这个吧:\bin\jvisualv ...
使用Jconsole小记 -
alang:
1.6的话用这个吧:\bin\jvisualvm.exe 强太 ...
使用Jconsole小记 -
totti19841106:
lzy.je 写道顶,但太浅显。抛砖引玉,呵呵
weblogic10.3 WLST -
lzy.je:
顶,但太浅显。
weblogic10.3 WLST
部署一个造成CPU高的应用后进行如下操作:
-bash-3.00# prstat -L -p 550 1 1
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/LWPID
550 root 568M 382M run 10 0 0:01:19 97% java/14
550 root 568M 382M sleep 59 0 0:00:11 0.1% java/2
550 root 568M 382M sleep 59 0 0:00:02 0.0% java/8
550 root 568M 382M sleep 59 0 0:00:03 0.0% java/20
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/13
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/22
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/10
550 root 568M 382M sleep 59 0 0:00:02 0.0% java/6
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/33
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/32
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/31
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/30
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/28
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/29
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/26
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/25
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/24
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/23
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/21
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/19
550 root 568M 382M sleep 59 0 0:00:09 0.0% java/18
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/17
550 root 568M 382M sleep 59 0 0:00:11 0.0% java/16
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/15
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/12
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/11
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/9
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/7
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/5
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/4
550 root 568M 382M sleep 59 0 0:00:00 0.0% java/3
550 root 568M 382M sleep 59 0 0:00:04 0.0% java/1
可以看到LWPID为14的线程占用CPU特高
-bash-3.00# pstack 550
550: /usr/jdk/instances/jdk1.5.0/bin/java -client -Xms256M -Xmx256M -Xverif
----------------- lwp# 1 / thread# 1 --------------------
d2afaaf5 lwp_cond_wait (8075810, 80757f8, 0, 0)
d26b7bfc __1cCosHSolarisFEventEpark6M_v_ (80757d0) + 4c
d26b72a6 __1cNObjectMonitorEwait6MxipnGThread__v_ (812618c, 0, 0, 1, 8074c10) + 346
d26b6c20 __1cSObjectSynchronizerEwait6FnGHandle_xpnGThread__v_ (80751b0, 0, 0, 8074c10) + 70
d26b6974 JVM_MonitorWait (8074cd0, 8046220, 0, 0, 80461ec, aa200298) + 234
cd00806d * java/lang/Object.wait(J)V+0
cd002b3b * java/lang/Object.wait()V+2 (line 474)
cd002b3b * weblogic/t3/srvr/T3Srvr.waitForDeath()V+46 (line 730)
cd002b3b * weblogic/t3/srvr/T3Srvr.run([Ljava/lang/String;)I+120 (line 380)
cd002a8f * weblogic/Server.main([Ljava/lang/String;)V+43 (line 67)
cd000214 * StubRoutines (1)
d26a8d97 __1cJJavaCallsLcall_helper6FpnJJavaValue_pnMmethodHandle_pnRJavaCallArguments_pnGThread__v_ (80464d0, 80463d8, 8046408, 8074c10, 80463cc, d26a8be8) + 187
d26a8c04 __1cCosUos_exception_wrapper6FpFpnJJavaValue_pnMmethodHandle_pnRJavaCallArguments_pnGThread__v2468_v_ (d26a8c10, 80464d0, 80463d8, 8046408, 8074c10) + 14
d26a8be8 __1cJJavaCallsEcall6FpnJJavaValue_nMmethodHandle_pnRJavaCallArguments_pnGThread__v_ (80464d0, 80751a4, 8046408, 8074c10) + 28
d26b9f40 __1cRjni_invoke_static6FpnHJNIEnv__pnJJavaValue_pnI_jobject_nLJNICallType_pnK_jmethodID_pnSJNI_ArgumentPusher_pnGThread__v_ (8074cd0, 80464d0, 0, 0, 8072049, 80464dc) + 180
d271d52c jni_CallStaticVoidMethod (8074cd0, 8075704, 8072049, 8075714) + 14c
08051e87 main (0, 806fba8, 8046de4) + af4
080512fa ???????? (13, 8046f38, 8046f5d, 8046f65, 8046f6e, 8046f77) + 80512fa
……………………………………………………
----------------- lwp# 14 / thread# 14 --------------------
d2387a2f ???????? (53a4da98, bfd4bec3) + 2599
d2385496 ???????? (54442d18, 400921fb) + 5450
d2380046 Java_java_lang_StrictMath_exp (841d718, c5e1a824, 54442d18, 400921fb, c5e1a828, 6eb09339) + 26
cd7a3403 * *java/lang/StrictMath.exp(D)D+0
cd7a362b * *java/lang/Math.exp(D)D+1 (line 237)
cd7a362b * *tdy218/alg/DeadLoop.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V+3 (line 17)
cd071c80 * tdy218/alg/DeadLoop.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V+0
cd002b3b * javax/servlet/http/HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V+30 (line 856)
cd715ac6 * *weblogic/servlet/internal/StubSecurityHelper$ServletServiceAction.run()Ljava/lang/Object;+43 (line 227)
cd716ad8 * *weblogic/servlet/internal/StubSecurityHelper.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/http/HttpServletRequest;Lweblogic/servlet/internal/ServletRequestImpl;Ljavax/servlet/ServletResponse;Ljavax/servlet/http/HttpServletResponse;Ljavax/ser+110 (line 125)
cd71a7ae * *weblogic/servlet/internal/ServletStubImpl.execute(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V+295 (line 283)
cd72be8e * *weblogic/servlet/internal/ServletStubImpl.execute(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V+4 (line 175)
cd06bd80 * alignment_frame_return Runtime1 stub
cd002b3b * weblogic/servlet/internal/WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;+164 (line 3244)
cd760cc8 * *weblogic/security/acl/internal/AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;+34 (line 321)
cd06bd80 * alignment_frame_return Runtime1 stub
cd002a64 * weblogic/security/service/SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;+18 (line 121)
cd002a64 * weblogic/servlet/internal/WebAppServletContext.securedExecute(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Z)V+277 (line 2010)
cd002b3b * weblogic/servlet/internal/WebAppServletContext.execute(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V+270 (line 1916)
cd002b3b * weblogic/servlet/internal/ServletRequestImpl.run()V+215 (line 1366)
cd6bacce * *weblogic/work/ExecuteThread.execute(Ljava/lang/Runnable;)V+29 (line 209)
cd06bd80 * alignment_frame_return Runtime1 stub
cd002b3b * weblogic/work/ExecuteThread.run()V+42 (line 181)
cd000214 * StubRoutines (1)
d26a8d97 __1cJJavaCallsLcall_helper6FpnJJavaValue_pnMmethodHandle_pnRJavaCallArguments_pnGThread__v_ (c5e1ae58, c5e1ad50, c5e1adb4, 841d658, c5e1ad44, d26a8be8) + 187
d26a8c04 __1cCosUos_exception_wrapper6FpFpnJJavaValue_pnMmethodHandle_pnRJavaCallArguments_pnGThread__v2468_v_ (d26a8c10, c5e1ae58, c5e1ad50, c5e1adb4, 841d658) + 14
d26a8be8 __1cJJavaCallsEcall6FpnJJavaValue_nMmethodHandle_pnRJavaCallArguments_pnGThread__v_ (c5e1ae58, 83529c0, c5e1adb4, 841d658) + 28
d26b664e __1cJJavaCallsMcall_virtual6FpnJJavaValue_nLKlassHandle_nMsymbolHandle_4pnRJavaCallArguments_pnGThread__v_ (c5e1ae58, 83529b4, d29eb47c, d29eb550, c5e1adb4, 841d658) + be
d26b657d __1cJJavaCallsMcall_virtual6FpnJJavaValue_nGHandle_nLKlassHandle_nMsymbolHandle_5pnGThread__v_ (c5e1ae58, 83529b0, 83529b4, d29eb47c, d29eb550, 841d658) + 6d
d26b64f0 __1cMthread_entry6FpnKJavaThread_pnGThread__v_ (841d658, 841d658) + d0
d26b63f1 __1cKJavaThreadRthread_main_inner6M_v_ (841d658) + 51
d26b6395 __1cKJavaThreadDrun6M_v_ (841d658) + 105
d28d0552 __1cG_start6Fpv_0_ (841d658) + d2
d2af7055 _thr_setup (cfa86200) + 4e
d2af7340 _lwp_start (cfa86200, 0, 0, c5e1aff8, d2af7340, cfa86200)
可以看到LWP为14的在进行DeadLoop.service操作
做下thread dump
把14转化为16进制,找到对应的nid
如下:
"[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon prio=3 tid=0x0841d658 nid=0xe runnable [0xc5e1a000..0xc5e1acb8]
at java.lang.StrictMath.exp(Native Method)
at java.lang.Math.exp(Math.java:237)
at tdy218.alg.DeadLoop.service(DeadLoop.java:17)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3244)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2010)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1916)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1366)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
再次验证是在进行DeadLoop.service操作
另外,从server日志里也能看到:
####<Feb 24, 2010 11:01:31 AM EST> <Error> <WebLogicServer> <solaris10> <AdminServer> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1267027291184> <BEA-000337> <[STUCK] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "655" seconds working on the request "Http Request: /DeadLoop.jspx", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
java.lang.StrictMath.exp(Native Method)
java.lang.Math.exp(Math.java:237)
tdy218.alg.DeadLoop.service(DeadLoop.java:17)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3244)
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2010)
weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1916)
weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1366)
weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
>
发表评论
-
BEA Dev2Dev在线 -- By developers, for developers
2010-03-02 15:32 934你还在怀念曾经的BEA Dev2Dev在线吗? weblog ... -
AIX/WEBLOGIC81_CPU高实验
2010-03-01 12:06 19701、查看“CP”列(表示 CPU 占用率),看其中哪些线 ... -
weblogic8/redhat linux上weblogic进程占用CPU高实例
2010-02-24 17:28 3853注:部分内容由tdy218提供 [bea@mylinux ~ ... -
weblogic923测试test应用
2010-01-20 11:59 1430OS:windows XP weblogic923 1、将 ... -
使用Jconsole小记
2009-12-21 22:09 2037JConsole毕竟是JDK自带的东西,功能虽然没有一些商业软 ... -
利用weblogic.Admin以及WLST进行thread dump
2009-08-12 14:04 53631、weblogic816 C:\Documents and ... -
IBM虚拟机产生的Snap.20090706.155344.348194.0001.trc
2009-07-21 15:53 6747weblogic运行在aix上,发生heapdump时随之还产 ... -
weblogic10.3 WLST
2009-06-10 11:59 2214今天在weblogic10.3上使用了一下WLST这个工具,这 ... -
weblogic10.3的boot.properties
2009-06-09 09:50 10048今天做了下试验: 新建了1个名为bbk的domain,目录结 ... -
如何分析java_errorpid.log
2009-05-31 13:17 1300Java的应用有时候会因为 ... -
weblogic9/10配置执行线程大小
2009-04-16 13:11 1754修改config文件 <server> ...
相关推荐
在Solaris 10上配置WebLogic集群能够实现高可用性和负载均衡,提高应用系统的性能和可靠性。 首先,我们需要准备以下资源: 1. Solaris 10操作系统:确保系统已经安装并更新到最新版本。 2. WebLogic Server软件:...
- 通过`top`可以查看各个进程的CPU和内存占用情况,以便定位到具体是哪个进程导致内存占用过高。 - `vmstat`命令可以帮助我们了解系统的整体性能状况,包括CPU利用率、内存交换情况等。 - 监控系统交换空间(swap...
#功能:weblogic守护进程:监控weblogic进程,当发现进程停止时调用重启脚本重启 #参数:进程唯一标识码,例如“weblogic” #依赖脚本:数据库操作脚本dbExecurteSQL.sh,weblogic重启脚本$PSSC_DOMAIN/startPssc.sh...
- 使用`cd /oracle/weblogic/user_projects/domains/weblogic10mss`命令进入新创建的Domain目录。 2. **启动WebLogic服务器**: - 执行`./startWebLogic.sh`命令来启动WebLogic服务器。 - 启动时将设置Java内存...
在 Solaris 操作系统上安装和配置 Weblogic 11g 是一项重要的任务,尤其对于那些需要在企业环境中运行 Java 应用程序的系统管理员。Weblogic 是一款由甲骨文公司提供的应用服务器,用于托管 Java EE 应用程序。下面...
java -jar /home/weblogic/weblogic12c/fmw_12.2.1.4.0_wls.jar -silent -responseFile /home/weblogic/weblogic12c/wls.rsp -invPtrLoc /home/weblogic/weblogic12c/oraInventory/ oraInst.loc ``` 安装完成后,...
【标题】:“WebLogic部署测试WAR包” 在Java企业级应用开发中,Web服务器和应用服务器扮演着至关重要的角色。WebLogic是Oracle公司提供的一款强大、功能丰富的Java EE应用服务器,而WAR(Web ARchive)文件则是一...
`mv /opt/weblogic/jdk-8u151-linux-x64 /opt/weblogic/jdk1.8.0_151` 4. JDK的配置 JDK的配置主要涉及到环境变量的设置。 4.1 环境变量的设置 需要将JDK的安装目录添加到系统的环境变量中: `export JAVA_HOME...
cd /oracle/weblogic/user_projects/domains/weblogic10mss ./startWebLogic.sh ``` 安装完成后,WebLogic Server将在默认配置下运行,你可以通过WebLogic管理控制台或者命令行工具对其进行管理和监控。为了保证...
它支持Java EE标准,并提供了高性能、高可用性和可伸缩性的特性。在开发或部署Java Web应用程序时,WebLogic Server经常被用作首选的应用服务器之一。 #### 二、WebLogic XML配置文件概述 在Web应用程序中,`...
nohup /weblogic/Oracle/Middleware/user_projects/domains/base_domain/startWebLogic.sh -Dfile.encoding=UTF-8 >> /weblogic/Oracle/Middleware/logs/weblogic.log 2>&1 & ``` **2. 停止脚本 (`stop.sh`)** ```...
./bsu.sh -install -patch_download_dir=/home/weblogic/Oracle/Middleware/utils/bsu/cache_dir -patchlist=FMJJ -prod_dir=/home/weblogic/Oracle/Middleware/wlserver_10.3 -verbose 注意:如果打过以前补丁的,...
java -cp bea9\weblogic91\server\lib\weblogic.jar weblogic.security.utils.AdminAccount weblogic weblogic . \] 运行该命令后,将在当前目录下生成一个名为`DefaultAuthenticatorInit.ldift`的新文件。 ###...
scp jdk-8u141-linux-x64.tar.gz 192.168.15.158:/app/weblogic/ scp fmw_12.2.1.1.0_wls.jar 192.168.15.158:/app/weblogic/ ``` 如果JDK是以文件夹形式存在,可以使用`scp -r`命令递归复制整个目录。 ##### ...
- `java -jar /home/weblogic/fmw_12.2.1.3.0_wls_Disk1_1of1/installer.jar -silent -responseFile /home/weblogic/wls.rsp` 9. 安装完成后,配置WebLogic Server。这可能包括创建域、配置服务器、设置数据源等。...
WebLogic Server 9 是一款由 Oracle 公司提供的企业级应用服务器,用于部署和管理Java应用程序,特别是基于Java EE(Enterprise Edition)的应用。在Linux环境下安装WebLogic Server 9需要遵循一系列步骤,以下是对...
要检查WebLogic服务状态,可以使用`ps -ef | grep weblogic`命令,若需停止服务,可以找到其进程ID(SID),然后使用`kill -9 (SID)`命令。要检查特定端口是否被占用,可以使用`netstat -anp | grep portno`命令。 ...
按照屏幕提示,接受许可协议,选择BEA主目录(这里是`/usr/local/weblogic/`),然后选择安装类型和产品目录。最后,创建一个新的WebLogic域。 安装完成后,需要使用WebLogic用户登录系统,执行以下命令: ```bash...