本文轉載:https://blog.csdn.net/mail_bai/article/details/7440940
]", which is more than the configured time (StuckThreadMaxTime) of "600" seconds
. Stack trace:
Thread-3847 "[STUCK] ExecuteThread: '92' for queue: 'weblogic.kernel.Default (se
lf-tuning)'" <alive, suspended, priority=1, DAEMON> {。。。。。}
ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "653" secon
,"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):指派到weblogic.kernel.Default隊列的線程數。如果你不需要使用超過15個線程(默認),就不必更改這個屬性值。
如果發送該請求較多,很有可能會導致weblogic的線程阻塞,嚴重會引起weblogic掛起現象。
可以通過以下幾種方法解決:
1)修改StuckThreadMaxTime參數,將默認的600s改成1200s,或者其它適合的值。
2)增大線程數,防止線程阻塞問題。
3)優化程序,減少處理時間。
1) 如何修改StuckThreadMaxTime參數值:http://lujinan858.iteye.com/blog/986237
啟動weblogic服務,進入控制台:
your_domain->Environment->Servers->your_server->Configuration->Tuning->Stuck Thread Max Time
如下圖:
2)怎樣增大線程數
window環境下修改【bea】\user_projects\domains\my_domain\bin\setDomainEnv.cmd文件,查詢最下面set JAVA_OPTIONS=%JAVA_OPTIONS%
改為:
set JAVA_OPTIONS=%JAVA_OPTIONS% -Dweblogic.threadpool.MinPoolSize=50
set JAVA_OPTIONS=%JAVA_OPTIONS% -Dweblogic.threadpool.MaxPoolSize=300
同時發現了一篇好文章:weblogic10.3優化設置 http://wenku.baidu.com/view/c42e7a5bbe23482fb4da4cf2.html
