最近我们团队做了个项目:webwork2.2.4+spring+hibernate,部署在IBM小型机AIX5.3.9.0+Weblogic8.1.4上,小型机上的系统是:suse linux 32位的,但我在这要特别说明的是jdk并非用的是weblogic自带的(用的是IBM的jdk,不知他们是何用意),jdk版本:J2RE 1.4.2 IBM AIX build ca142-20080515(SR11)。
申明:我们是为一个机关单位做的项目,机关单位规矩就是多,效率差!他们的要求是:小型机里的东西一概不可以动,但死机现象要解决,现在我们初步认定程序没有问题,但我们得拿出足够的证据证明死机不是程序的错,而是小型机配置上,但问题是:我们悲剧的现在拿不出证据!
死机现象:宕机机器极其不规律,有时是用户操作大数据量时,有时是只个把用户在操作,都会出现莫名其妙的宕机,没有报错。weblogic自带监视的三根线:吞吐率、队列长度(总是为0)、内存使用率,都比较正常,有时死机时内存使用率是在50%那,有时在最高峰。调出后台日志,没有记录到什么错误,但是它就莫名其妙的死机了!而且小型机为我们分配的线程数为:200(是他们为我们分配线程数的max值了),那台小型机总共能分配线程数为:400。
由于我们是远程部署的,我们能动态检测到的,就这三条线。现在我们猜测死机原因,其实是障碍和尚,瞎猜着!
下面是我们今天我们宕机后,用小型机自带的机制生成的线程宕机日志(由于这些东西都是网上搜来的,所以我们也看不懂!只知道没有死锁,没有阻塞线程!望能看的懂的大虾,能否看出点什么端倪!)File name : C:\Documents and Settings\yyang\桌面\内容\javacore229876.1269937451.txt
Cause of thread dump : signal 3 received
Date: 2010/03/30 at 16:24:11
Process ID : 229876
Operating System : AIX 5.3.9.0
Processor Architecture : POWER_PC (impl: unknown, ver: unknown)
Number of Processors : 8
Java version : J2RE 1.4.2 IBM AIX build ca142-20080515 (SR11)
Java Heap Information
Maximum Java heap size : 2048m
Initial Java heap size : 2048m
Java Home Directory : /usr/java14/jre
Java DLL Directory : /usr/java14/jre/bin
System Classpath : /usr/java14/jre/lib/core.jar:/usr/java14/jre/lib/graphics.jar:/usr/java14/jre/lib/security.jar:/usr/java14/jre/lib/server.jar:/usr/java14/jre/lib/xml.jar:/usr/java14/jre/lib/charsets.jar:/usr/java14/jre/classes:/usr/java14/jre/lib/ibmjssefips.jar:/usr/java14/jre/lib/ibmcertpathprovider.jar:/usr/java14/jre/lib/ibmjaaslm.jar:/usr/java14/jre/lib/ibmjcefw.jar:/usr/java14/jre/lib/ibmjgssprovider.jar:/usr/java14/jre/lib/ibmjsseprovider.jar:/usr/java14/jre/lib/ibmorb.jar:/usr/java14/jre/lib/ibmorbapi.jar:/usr/java14/jre/lib/ibmpkcs.jar
User Arguments : vfprintf 0x30000E1C -Xms2048m -Xmx2048m -Dweblogic.Name=bopchk_server -Dweblogic.ProductionModeEnabled=true -Djava.security.policy=/home/weblogic/server/lib/weblogic.policy -Djava.awt.headless=true -Dinvokedviajava -Djava.class.path=./lib/antlr-2.7.6rc1.jar:./lib/db2jcc.jar:./lib/db2jcc_license_cu.jar:/home/weblogic/server/lib/CR237198_810sp4.jar:/usr/java14/lib/tools.jar:/home/weblogic/server/lib/weblogic_sp.jar:/home/weblogic/server/lib/weblogic.jar:/home/weblogic/server/lib/knex.jar:/home/weblogic/common/lib/log4j.jar:/home/weblogic/server/lib/jconn3.jar:/home/weblogic/server/lib/jTDS3.jar::/home/weblogic/common/eval/pointbase/lib/pbserver44.jar:/home/weblogic/common/eval/pointbase/lib/pbclient44.jar:/usr/java14/jre/lib/rt.jar:/home/weblogic/server/lib/webservices.jar:/home/bopchk/sqllib/java/db2java.zip:/home/bopchk/sqllib/java/db2jcc.jar:/home/bopchk/sqllib/java/sqlj.zip:/home/bopchk/sqllib/function:/home/bopchk/sqllib/java/db2jcc_license_cu.jar:. vfprintf
GC Counter: 5
AF Counter: 4
Free Java heap size: 1,290,563,072 bytes
Allocated Java heap size: 2,147,482,112 bytes
Current Thread : "Signal dispatcher"
Number of loaded classes in Java heap : 6,586
Recommended size of kCluster : greater than 7,244
Number of classloaders in Java heap : 463
Command line : /usr/java14/bin/java -Xms2048m -Xmx2048m -Dweblogic.Name=bopchk_server -Dweblogic.ProductionModeEnabled=true -Djava.security.policy=/home/weblogic/server/lib/weblogic.policy -Djava.awt.headless=true weblogic.Server Thread Status Analysis:
Status Number of Threads : 257 Percentage
Deadlock 0 0 (%)
Runnable 31 12 (%)
Waiting on condition 224 87 (%)
Waiting on monitor 2 1 (%)
Suspended 0 0 (%)
Object.wait() 0 0 (%)
Blocked 0 0 (%)
Parked 0 0 (%)Thread Method Analysis:
Method Name Number of Threads : 257 Percentage
java.lang.Object.wait(Native Method) 222 86 (%)
java.net.SocketOutputStream.socketWrite0(Native Method) 22 9 (%)
java.net.PlainSocketImpl.socketConnect(Native Method) 5 2 (%)
weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java(Compiled Code)) 2 1 (%)
java.lang.Thread.sleep(Native Method) 1 0 (%)
weblogic.socket.PosixSocketMuxer.poll(Native Method) 1 0 (%)
java.net.PlainSocketImpl.socketClose0(Native Method) 1 0 (%)
java.net.PlainSocketImpl.socketAccept(Native Method) 1 0 (%)
java.lang.ref.Reference.process(Native Method) 1 0 (%)
NO JAVA STACK 1 0 (%)Thread Aggregation Analysis:
Thread Type Number of Threads : 257 Percentage
Thread 250 97 (%)由于找不到直接上传截图的地方,所以只有这样排版,让大家看了,请看到我这么认真排版的份上, 原谅我的上传不了截图吧!我把今天的宕机日志上传到我上传的资源上(题目:IBM小型机线程宕机分析器)资源分:0分!
地址:http://download.csdn.net/source/2185419希望能提供帮助的兄台,麻烦下,去下下来看详细的,分现在只能给到100分,等问题解决,另开贴,给那些帮助过我的人送上分!
申明:我们是为一个机关单位做的项目,机关单位规矩就是多,效率差!他们的要求是:小型机里的东西一概不可以动,但死机现象要解决,现在我们初步认定程序没有问题,但我们得拿出足够的证据证明死机不是程序的错,而是小型机配置上,但问题是:我们悲剧的现在拿不出证据!
死机现象:宕机机器极其不规律,有时是用户操作大数据量时,有时是只个把用户在操作,都会出现莫名其妙的宕机,没有报错。weblogic自带监视的三根线:吞吐率、队列长度(总是为0)、内存使用率,都比较正常,有时死机时内存使用率是在50%那,有时在最高峰。调出后台日志,没有记录到什么错误,但是它就莫名其妙的死机了!而且小型机为我们分配的线程数为:200(是他们为我们分配线程数的max值了),那台小型机总共能分配线程数为:400。
由于我们是远程部署的,我们能动态检测到的,就这三条线。现在我们猜测死机原因,其实是障碍和尚,瞎猜着!
下面是我们今天我们宕机后,用小型机自带的机制生成的线程宕机日志(由于这些东西都是网上搜来的,所以我们也看不懂!只知道没有死锁,没有阻塞线程!望能看的懂的大虾,能否看出点什么端倪!)File name : C:\Documents and Settings\yyang\桌面\内容\javacore229876.1269937451.txt
Cause of thread dump : signal 3 received
Date: 2010/03/30 at 16:24:11
Process ID : 229876
Operating System : AIX 5.3.9.0
Processor Architecture : POWER_PC (impl: unknown, ver: unknown)
Number of Processors : 8
Java version : J2RE 1.4.2 IBM AIX build ca142-20080515 (SR11)
Java Heap Information
Maximum Java heap size : 2048m
Initial Java heap size : 2048m
Java Home Directory : /usr/java14/jre
Java DLL Directory : /usr/java14/jre/bin
System Classpath : /usr/java14/jre/lib/core.jar:/usr/java14/jre/lib/graphics.jar:/usr/java14/jre/lib/security.jar:/usr/java14/jre/lib/server.jar:/usr/java14/jre/lib/xml.jar:/usr/java14/jre/lib/charsets.jar:/usr/java14/jre/classes:/usr/java14/jre/lib/ibmjssefips.jar:/usr/java14/jre/lib/ibmcertpathprovider.jar:/usr/java14/jre/lib/ibmjaaslm.jar:/usr/java14/jre/lib/ibmjcefw.jar:/usr/java14/jre/lib/ibmjgssprovider.jar:/usr/java14/jre/lib/ibmjsseprovider.jar:/usr/java14/jre/lib/ibmorb.jar:/usr/java14/jre/lib/ibmorbapi.jar:/usr/java14/jre/lib/ibmpkcs.jar
User Arguments : vfprintf 0x30000E1C -Xms2048m -Xmx2048m -Dweblogic.Name=bopchk_server -Dweblogic.ProductionModeEnabled=true -Djava.security.policy=/home/weblogic/server/lib/weblogic.policy -Djava.awt.headless=true -Dinvokedviajava -Djava.class.path=./lib/antlr-2.7.6rc1.jar:./lib/db2jcc.jar:./lib/db2jcc_license_cu.jar:/home/weblogic/server/lib/CR237198_810sp4.jar:/usr/java14/lib/tools.jar:/home/weblogic/server/lib/weblogic_sp.jar:/home/weblogic/server/lib/weblogic.jar:/home/weblogic/server/lib/knex.jar:/home/weblogic/common/lib/log4j.jar:/home/weblogic/server/lib/jconn3.jar:/home/weblogic/server/lib/jTDS3.jar::/home/weblogic/common/eval/pointbase/lib/pbserver44.jar:/home/weblogic/common/eval/pointbase/lib/pbclient44.jar:/usr/java14/jre/lib/rt.jar:/home/weblogic/server/lib/webservices.jar:/home/bopchk/sqllib/java/db2java.zip:/home/bopchk/sqllib/java/db2jcc.jar:/home/bopchk/sqllib/java/sqlj.zip:/home/bopchk/sqllib/function:/home/bopchk/sqllib/java/db2jcc_license_cu.jar:. vfprintf
GC Counter: 5
AF Counter: 4
Free Java heap size: 1,290,563,072 bytes
Allocated Java heap size: 2,147,482,112 bytes
Current Thread : "Signal dispatcher"
Number of loaded classes in Java heap : 6,586
Recommended size of kCluster : greater than 7,244
Number of classloaders in Java heap : 463
Command line : /usr/java14/bin/java -Xms2048m -Xmx2048m -Dweblogic.Name=bopchk_server -Dweblogic.ProductionModeEnabled=true -Djava.security.policy=/home/weblogic/server/lib/weblogic.policy -Djava.awt.headless=true weblogic.Server Thread Status Analysis:
Status Number of Threads : 257 Percentage
Deadlock 0 0 (%)
Runnable 31 12 (%)
Waiting on condition 224 87 (%)
Waiting on monitor 2 1 (%)
Suspended 0 0 (%)
Object.wait() 0 0 (%)
Blocked 0 0 (%)
Parked 0 0 (%)Thread Method Analysis:
Method Name Number of Threads : 257 Percentage
java.lang.Object.wait(Native Method) 222 86 (%)
java.net.SocketOutputStream.socketWrite0(Native Method) 22 9 (%)
java.net.PlainSocketImpl.socketConnect(Native Method) 5 2 (%)
weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java(Compiled Code)) 2 1 (%)
java.lang.Thread.sleep(Native Method) 1 0 (%)
weblogic.socket.PosixSocketMuxer.poll(Native Method) 1 0 (%)
java.net.PlainSocketImpl.socketClose0(Native Method) 1 0 (%)
java.net.PlainSocketImpl.socketAccept(Native Method) 1 0 (%)
java.lang.ref.Reference.process(Native Method) 1 0 (%)
NO JAVA STACK 1 0 (%)Thread Aggregation Analysis:
Thread Type Number of Threads : 257 Percentage
Thread 250 97 (%)由于找不到直接上传截图的地方,所以只有这样排版,让大家看了,请看到我这么认真排版的份上, 原谅我的上传不了截图吧!我把今天的宕机日志上传到我上传的资源上(题目:IBM小型机线程宕机分析器)资源分:0分!
地址:http://download.csdn.net/source/2185419希望能提供帮助的兄台,麻烦下,去下下来看详细的,分现在只能给到100分,等问题解决,另开贴,给那些帮助过我的人送上分!
Thread Status Analysis:
Status Number of Threads : 257 Percentage
Deadlock 0 0 (%)
Runnable 31 12 (%)
Waiting on condition 224 87 (%)
Waiting on monitor 2 1 (%)
Suspended 0 0 (%)
Object.wait() 0 0 (%)
Blocked 0 0 (%)
Parked 0 0 (%)Thread Method Analysis:
Method Name Number of Threads : 257 Percentage
java.lang.Object.wait(Native Method) 222 86 (%)
java.net.SocketOutputStream.socketWrite0(Native Method) 22 9 (%)
java.net.PlainSocketImpl.socketConnect(Native Method) 5 2 (%)
weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java(Compiled Code)) 2 1 (%)
java.lang.Thread.sleep(Native Method) 1 0 (%)
weblogic.socket.PosixSocketMuxer.poll(Native Method) 1 0 (%)
java.net.PlainSocketImpl.socketClose0(Native Method) 1 0 (%)
java.net.PlainSocketImpl.socketAccept(Native Method) 1 0 (%)
java.lang.ref.Reference.process(Native Method) 1 0 (%)
NO JAVA STACK 1 0 (%)Thread Aggregation Analysis:
Thread Type Number of Threads : 257 Percentage
Thread 250 97 (%)
这三个分析都是分三列来看的,由于没有上下对齐,所以不怎么好看,如上三个,第一列为名字,第二列为个数,第三列为百分比!
希望大虾们给予小弟帮助,谢谢了!
这就是中国的机关啊!!!