现象:
WebLogic Server 10g R3版本在IBM AIX 5.3的操作系统环境中做压力测试或是长时间稳定性测试过程中,出现线程死锁的现象,WebLogic Server实例无法继续提供服务,压力测试工具停止发送请求后,WebLogic Server实例无法自动恢复。
同样的应用在tomcat上运行是正常的,当压力达到一定的时候,虽然也会出现tomcat无法响应的情况,但是压力测试工具停止发送请求后,tomcat能自动恢复继续接受请求。
问题分析:
WebLogic Server 10g R3的线程优化机制是自适应、自调整的,随着线程死锁的线程数目越来越多,操作系统CPU资源无法再派生更多新的线程,最终导致WebLogic Server的实例挂死。
解决方法:
解决WebLogic Server 10g R3版本在IBM AIX 5.3的操作系统解决线程死锁问题的方法:WebLogic Server 10g R3在IBM AIX 5.3操作系统有一个patch专门是解决线程死锁的问题:CR370915_1030GA.jar 。
将CR370915_1030GA.jar加载到WebLogic Server 10g R3的CLASSPATH环境变量中并保存,重新启动运行WebLogic Server 10g R3实例。
建议将CR370915_1030GA.jar文件加载到 WL_HOME/common/bin/commEnv.sh文件中的环境变量:$WEBLOGIC_CLASSPATH的最前面,这样你在当前主机再次创建新的Domain不需要另外再次单独加载CR370915_1030GA.jar补丁文件了。