ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)'  异常解决办法

weblogic设置修改:
"weblogic.kernel.Default"是从客户端提交请求后产生的线程所在的队列名。这个队列的线程数默认是15个。如果超过15个线程堵塞,则部署的应用将不能访问。同时后台报:
<2008-2-27 下午09时37分48秒 CST> <Error> <WebLogicServer> <BEA-000337> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default' has been busy for "1,720" seconds working on the request "Http Request: /myapp/test/index.jsp", which is more than the configured time (StuckThreadMaxTime) of "600" seconds.> 
2,线程数(Tread Count):七七八八网 http://www.qi788.com 指派到weblogic.kernel.Default队列的线程数。如果你不需要使用超过15个线程(默认),就不必更改这个属性值。

     如果发送该请求较多,很有可能会导致weblogic的线程阻塞,严重会引起weblogic挂起现象。 
可以通过以下几种方法解决: 
1)修改StuckThreadMaxTime参数,将默认的600s改成1200s,或者其它适合的值。 
2)增大线程数,防止线程阻塞问题。 

3)优化程序,减少处理时间。


可以通过在启动脚本增加如下参数,可以指定默认线程池的最小值、最大值:

-Dweblogic.threadpool.MinPoolSize=100

-Dweblogic.threadpool.MaxPoolSize=500

 

或者

进入WebLogic控制台——左边窗口的mydomain——servers——点击myserver——Configuration——General——点击Advanced Options的Show链接——最下面的Configure Execute Queues 链接——weblogic.kernel.Default链接——Thread Count参数。的却是隐藏的比较深。修改Thread Count的值,然后重启WebLogic就可以生效了。

七七八八网 http://www.qi788.com