time of,weblogic日志報錯解決-...
445
2023-08-02
最近發現新系統weblogic中間件日志有一些線程超時方面的報錯,因為默認是600,所以順便對這塊做了一些優化。處理過程如下:
報錯內容:首先貼報錯信息:
ExecuteThread: '33' for queue: 'weblogic.kernel.Default (self-tuning)'>><[STUCK] ExecuteThread: '9' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "701" seconds working on the request "glog.server.query.query_ListRetriever_whmeh3_EOImpl", which is more than the configured time (StuckThreadMaxTime) of "600" seconds.思路:此問題是由于處理請求超時引起的,系統配置的處理時間是600s,但是該線程處理了701后,仍然沒將請求釋放,所以報了這個錯誤。如果發送該請求較多,很有可能會導致weblogic的線程阻塞,嚴重會引起weblogic掛起現象。
考慮:
1)修改StuckThreadMaxTime參數,將默認的600s改成1200s,或者其它適合的值。
2)增大線程數,防止線程阻塞問題。
3)優化程序,減少處理時間。
解決1、修改StuckThreadMaxTime參數,將默認的600s改成1200s
2、數據庫連接池調優
優化前:
優化后:
3、線程池調優
線程池
修改config.xml(/otm/otm62/weblogic/domains/otm/config/config.xml)中的
AdminServer false true 33 25000 -1 1200 60 50 300 300 5000 3600 10 5 54、系統層面調優
ulimit -n
篇幅有限,關于weblogic這個問題在這里也做個簡單記錄,后面會分享更多Linux方面的內容和平時的一些處理方式,感興趣的朋友可以關注一下~
發表評論
暫時沒有評論,來搶沙發吧~