Weblogic服务器获取StuckThreadMaxTime异常。我如何解决它?

时间:2016-03-11 07:27:27

标签: java rest weblogic

我有一个暴露的REst服务,它会调用一个脚本文件(shell脚本),需要20分钟才能完成并发送响应。我在日志中得到以下异常。

<Error> <WebLogicServer> <AdminServer>     
<[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self- tuning)'> <<WLS Kernel>> <> <> <1457678291528> <BEA-000337> 
<[STUCK] ExecuteThread: '14' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "606" seconds working on the request "Workmanager: default, Version: 0, Scheduled=true, Started=true, Started time: 606763 ms
[
POST /svc/oneclick/wsAuto/createTemplate/005056A509C4 HTTP/1.1
User-Agent: oneclick
Accept: */*
X-Forwarded-For: 10.19.120.25
X-Forwarded-Host: 10.19.120.48
X-Forwarded-Server: XXX-XXX-template-sa1.XXX.com
Connection: Keep-Alive

]", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
Thread-34 "[STUCK] ExecuteThread: '14' for queue: 'weblogic.kernel.Default (self-tuning)'" <alive, suspended, waiting, priority=1, DAEMON> {-- Waiting for notification on: java.lang.UNIXProcess@9a5ed5a[fat lock]

2 个答案:

答案 0 :(得分:3)

您的处理需要20分钟,并且StuckThreadMaxTime的默认设置设置为600秒,您将在日志中看到此类错误。 您有两种选择:

  • 加快处理速度
  • 将StuckThreadMaxTime设置为更大的值(将其置于weblogic控制台中:domain&gt; Environment&gt; Servers&gt; Admin Server&gt; Configuration / Tuning)

答案 1 :(得分:0)

如果处理确实需要20分钟,则更改域中所有服务器上的StuckThreadMaxTime。 理想情况下,在部署Application的服务器上。 如何更改:http://docs.oracle.com/cd/E23943_01/apirefs.1111/e13952/taskhelp/tuning/TuningExecuteThreads.html

相关问题