首页 > 代码库 > 解决BEA-000438 Unable to load performance pack.

解决BEA-000438 Unable to load performance pack.

环境:

硬件:ibm power linux

os:rhel 版本不详

软件:weblogic11g, 软件名:wls1035_generic.jar

过程:

在power linux上安装rhel操作系统,由于oracle官网没有可用的jdk,所以到ibm网站上相对应的sdk

安装weblogic,创建域后运行,一切正常,在域控制台中启用native io选线,后台日志就报错:

<Aug 25, 2014 11:09:24 AM CST> <Error> <Socket> <BEA-000438> <Unable to load performance pack. Using Java I/O instead. Please ensure that libmuxer library is in :‘/opt/ibm/java-ppc64-60/jre/lib/ppc64/default:/opt/ibm/java-ppc64-60/jre/lib/ppc64:/opt/bea/Oracle/Middleware/patch_wls1035/profiles/default/native:/opt/bea/Oracle/Middleware/wlserver_10.3/server/native/linux/i686:/opt/bea/Oracle/Middleware/wlserver_10.3/server/native/linux/i686/oci920_8:/usr/lib‘
>

<BEA-000402> <There are: 5 active sockets, but the maximum number of socket reader threads allowed by the configuration is: 4. You may want to alter your configuration.>

 

解决过程:

看来是安装的weblogic软件没有适用与power linux下的native io包,在网上搜到了这个帖子问题和这个类似:

http://www.aixchina.net/home/space.php?uid=9154&do=blog&id=38967

根据IBM的官方说法,WEBLOGIC不推荐在POWERLINUX上使用
只有早期版本Weblogic8.1 官方论证支持Redhat AS/ES 4, Suse 8/9,其他版本都没有官方论证。
产品能安装到PowerLinux,但没有认证,没有针对PowerLinux平台的Native IO 包。
JDK 1.4之后引入了NIO(Non-blocking IO),而WebLogic默认会自动选择本地代码IO(Native IO)或Java IO。可通过如下参数指定您想使用的Muxer实现为NIO:-Dweblogic.MuxerClass=weblogic.socket.NIOSocketMuxer
用NIOSocketMutex时存在bug,导致WTC(Weblogic Tuxedo Connector)连接错误,10.3.5的版本有patch修复了这个bug。

 

解决办法:

既然没有native io包,只好使用NIO包,但是性能会有下降,使用NIO包后,在控制台中native io选项还可以勾选上,后台日志不会报错。
vi $WLS_HOME/user_projects/domains/testdomain/bin/setDomainENV.sh(应该是这个文件名,具体忘记了,反正和这个文件名类似)
JAVA_OPTIONS="${JAVA_OPTIONS} -Dweblogic.MuxerClass=weblogic.socket.NIOSocketMuxer"
export JAVA_OPTIONS

 

解决BEA-000438 Unable to load performance pack.