定义或卡线是什么?
如果
线程
在设定
的时间
内连续工作(非空闲),则WebLogic Server会将其诊断
为阻塞
。
您可以通过更改在诊断出线程被阻塞之前的时间长度(
Stuck Thread Max Time ),以及通过更改服务器检查线程是否被阻塞的频率,来调整服务器的线程检测行为。
在此处查看如何更改“粘线最大时间”。
问题还是为什么“粘线”是邪恶的?
WebLogic Server自动检测执行队列中的线程何时变为“阻塞”状态。 由于卡住的线程无法完成其当前工作或接受新工作,因此服务器每次诊断出卡住的线程时都会记录一条消息。 如果执行队列中的所有线程都卡住了,则服务器会根据执行队列将其运行状况更改为“警告”或“严重”:
- 如果默认队列中的所有线程都卡住了,则服务器会将其运行状况更改为“ 严重” 。 (您可以将Node Manager应用程序设置为在严重运行状况下自动关闭和重新启动服务器。有关更多信息,请参阅“配置和管理WebLogic Server”中的“ Node Manager功能 ”。)
- 如果weblogic.admin.HTTP,weblogic.admin.RMI或用户定义的执行队列中的所有线程都卡住了,则服务器会将其运行状况更改为“ 警告” 。
因此,实际上,几个“阻塞线程”可能不会使服务器崩溃,从而阻止服务器处理请求,但这是一个不好的信号。 通常,卡住的线程数将增加,并且服务器最终将崩溃。
您可以采取什么措施来避免应用程序完全失败?
WebLogic Server会定