公司的產品在一個大集中式的項目中,上線試運行的過程中,性能一直很慢,最近有頻繁出現down機的現象,運行環境是:AIX5.3+ibm jdk1.5.0+weblogic9.2 MP2,今天終於請了兩位bea的專家進行會診,一位曾經是bean的R&D人員,一位是supporter,會診結果如下:
1、nohup.out文件
<Jul 22, 2008 11:49:06 AM GMT+08:00> <Error> <Socket> <BEA-000438> <Unable to load performance pack. Using Java I/O instead. Please ensure that libmuxer library is in :'/usr/java5_64/jre/bin:/usr/java5_64/jre/bin/j9vm:/usr/java5_64/jre/bin:/cicoa_app_bea/bea/patch_weblogic922/profiles/default/native:/cicoa_app_bea/bea/weblogic92/server/native/aix/ppc::/usr/lib'
由於應用配置了IBM的64位JDK,而WebLogic缺省是32位的Native IO庫,導致沒有使用Native IO,實際上還在用的Java I/O(這一點在上面的日誌中就可以看出來),而我們一直以爲系統是運行在Native IO模式下,因此性能受到很大影響(兩位bea的人員都認爲至少有30%以上的性能影響)。解決辦法:找到weblogic的64位的native io包libmuxer.so配置到系統lib路徑中
2、關於down機的問題,javacore文件的片段摘抄如下:
NULL ------------------------------------------------------------------------
0SECTION TITLE subcomponent dump routine
NULL ===============================
1TISIGINFO Dump Event "gpf" (00002000) received
1TIDATETIME Date: 2008/04/29 at 10:29:33
1TIFILENAME Javacore filename: /cicoa_app_web/bea/user_projects/domains/cicoa/javacore.20080429.102723.1163582.txt
NULL ------------------------------------------------------------------------
0SECTION GPINFO subcomponent dump routine
NULL ================================
2XHOSLEVEL OS Level : AIX 5.3
2XHCPUS Processors -
3XHCPUARCH Architecture : ppc64
3XHNUMCPUS How Many : 16
NULL
1XHEXCPCODE J9Generic_Signal_Number: 0000000000000004
1XHEXCPCODE Signal_Number: 000000000000000B
1XHEXCPCODE Error_Value: 0000000000000000
1XHEXCPCODE Signal_Code: 0000000000000032
1XHEXCPCODE Handler1: 09001000A01EC568
1XHEXCPCODE Handler2: 09001000A01E1590
NULL
1XHEXCPMODULE Module: /usr/java5_64/jre/bin/libj9gc23.so
1XHEXCPMODULE Module_base_address: 090000000140C000
Java虛擬機存在問題,建議升級JDK及相關補丁,/usr/java5_64/jre/bin/libj9gc23.so
這個文件中ibm的jdk1.5.0的初始版本中是存在bug的需要打一個補丁。