ThreadPool has stuck threads
weblogic 10后台出现警告,原因:ThreadPool has stuck threads
在WEBLOGIC中如果一个线程执行时间超过了Stuck Thread Max Time规定的时间,
WEBLOGIC会把它认为是STUCK线程,并记录在日志中。
我们也可以通过'Dump Thread Stacks' 来捕获STUCK状态的进程。
Home > Summary of Servers > AdminServer>Monitoring>Performance>'Dump Thread Stacks'
但并不是每次'Dump Thread Stacks' 都能捕获Stuck状态的进程。
只有在线程执行时间超过了Stuck Thread Max Time规定的时间
我们才有可能通过'Dump Thread Stacks' 或WEBLOGIC的日志捕获它。
通常我们通过'Dump Thread Stacks'能捕获到以下信息。
"[STUCK] ExecuteThread: '20' for queue: 'weblogic.kernel.Default (self-tuning)'" RUNNABLE native
jrockit.NET.SocketNativeIO.readBytesPinned(Native Method)
jrockit.Net.SocketNativeIO.socketRead(SocketNativeIO.Java:32)
java.net.SocketInputStream.socketRead0(SocketInputStream.java)
java.net.SocketInputStream.read(SocketInputStream.java:129)
java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
java.io.BufferedInputStream.read(BufferedInputStream.java:313)
com.informix.asf.IfxDataInputStream.readFully(IfxDataInputStream.java:146)
com.informix.asf.IfxDataInputStream.readSmallInt(IfxDataInputStream.java:453)
在WEBLOGIC的日志中我们能看到如下信息:
<2010-11-8 下午02时38分28秒 CST> <Error> <WebLogicServer> <BEA-000337> <[STUCK]
ExecuteThread: '189' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "115" seconds
working on the request "Http Request: /prpall/business/selectPolicy.do", which is more than the configured
time (StuckThreadMaxTime) of "30" seconds. Stack trace:
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
java.io.BufferedInputStream.read(BufferedInputStream.java:313)
com.informix.asf.IfxDataInputStream.readFully(IfxDataInputStream.java:146)
com.informix.asf.IfxDataInputStream.readSmallInt(IfxDataInputStream.java:453)
com.informix.jdbc.IfxSqli.receiveMessage(IfxSqli.java:2495)
com.informix.jdbc.IfxSqli.a(IfxSqli.java:1752)
com.informix.jdbc.IfxSqli.executeStatementQuery(IfxSqli.java:1704)
com.informix.jdbc.IfxSqli.executeStatementQuery(IfxSqli.java:1635)
com.informix.jdbc.IfxResultSet.a(IfxResultSet.java:206)
com.informix.jdbc.IfxStatement.executeQueryImpl(IfxStatement.java:1229)
com.informix.jdbc.IfxPreparedStatement.executeQuery(IfxPreparedStatement.java:376)
weblogic.jdbc.wrapper.PreparedStatement.executeQuery(PreparedStatement.java:100)
在压力测试阶段为了捕获执行时间长的进程我们可以调整
weblogic中的Stuck Thread Max Time 为一个较小的值。
来捕获并发测试时stuck状态的进程。比如30秒。
通常在产品环境中设置此参数值为600秒。
Home > Summary of Servers > AdminServer >Tuning >Stuck Thread Max Time
以下是weblogic的联机文档中对Stuck Thread Max Time 的解释
The number of seconds that a thread must be continually working before this server considers the thread stuck. For example, if you set this to 600 seconds, WebLogic Server In Web Logic Server 9.x and later, it is recommended that you use the MBean Attribute: Minimum value: Maximum value: Changes take effect after you redeploy the module or restart the server |
ThreadPool has stuck threads的更多相关文章
- weblogic threadpool has stuck threads
https://blog.csdn.net/wyx713510713/article/details/12705221 最近项目启动时出问题,weblogic的nohup日志文件中找到下面一段(红色部 ...
- weblogic threadpool has stuck threads引发内存溢出
转至:https://blog.csdn.net/wyx713510713/article/details/12705221?utm_source=copy 最近项目老是出问题,weblogic的no ...
- 云计算之路-阿里云上:从ASP.NET线程角度对“黑色30秒”问题的全新分析
在这篇博文中,我们抛开对阿里云的怀疑,完全从ASP.NET的角度进行分析,看能不能找到针对问题现象的更合理的解释. “黑色30秒”问题现象的主要特征是:排队的请求(Requests Queued)突增 ...
- Apache Thrift 跨语言服务开发框架
Apache Thrift 是一种支持多种编程语言的远程服务调用框架,由 Facebook 于 2007 年开发,并于 2008 年进入 Apache 开源项目管理.Apache Thrift 通过 ...
- Microshaoft WinDbg cmdtree
windbg ANSI Command Tree 1.0 title {"Microshaoft Commands"} body {"cmdtree"} {&q ...
- Quartzs -- Quartz.properties 配置
Quartzs -- Quartz.properties 配置 文件加载位置 默认:优先顺序 Classpath:quartz.properties --> org/quartz/quartz. ...
- Thread Pool Engine, and Work-Stealing scheduling algorithm
http://pages.videotron.com/aminer/threadpool.htm http://pages.videotron.com/aminer/zip/threadpool.zi ...
- 使用C++11 实现的线程池
最近打算做一个服务器端程序,每来一个客户端请求新开一个线程进行处理.在网上查了一些资料后,准备使用线程池来做这个东西.使用C++11新的库处理想线程问题比以前简单了许多,在网上找到一份线程池的实现,h ...
- 多线程 Worker Thread 模式
Worker是“工人”的意思,worker thread pattern中,工人线程(worker thread)会一次抓一件工作来处理,当没有工作可做时,工人线程会停下来等待心得工作过来. Work ...
随机推荐
- Oracle sql loader 使用案例
Listing 1: ---------------------- dir *.csv type abc.csv sqlplus scott/tiger@orcl create table emp1 ...
- jquery.validate1.9.0前台验证使用
一.利用jquery.form插件提交表单方法使用jquery.validate插件 现象:当提交表单时,即使前台未验证通过,也照常提交表单. 解决办法: $('#myForm').submit(fu ...
- DRP——JDBC中的Batch
在jdbc2.0里添加了批量处理的功能(batch),其同意将多个sql语句作为一个单元送至数据库去运行,这样做能够提高操作效率.在操作大量的数据时, ORM框架实现批量是非常慢的.我们能够使用jdb ...
- git stash笔记
日常工作中经常会需要放下手头上的工作,转而去修改之前的某一个bug,此时就需要将现有的改动添加到staging area git add . 然后将这些改动暂时放入一个stack中: git stas ...
- Web版RSS阅读器(五)——初步完成阅读功能
上一篇博文<Web版RSS阅读器(四)——定制自己的Rss解析库myrsslib4j>中,已经分享给大家制作自己的rss解析库.稍微有点遗憾的是,它仅仅支持rss格式的博客.现在给大家分享 ...
- 算法笔记_034:大整数乘法(Java)
目录 1 问题描述 2 解决方案 2.1 蛮力法 1 问题描述 计算两个大整数相乘的结果. 2 解决方案 2.1 蛮力法 package com.liuzhen.chapter5; import ...
- SpringMVC请求参数和响应结果全局加密和解密
前提 前段时间在做一个对外的网关项目,涉及到加密和解密模块,这里详细分析解决方案和适用的场景.为了模拟真实的交互场景,先定制一下整个交互流程.第三方传输(包括请求和响应)数据报文包括三个部分: 1.t ...
- python发送邮件实例1
文件形式的邮件 #!/usr/bin/env python3 #coding: utf-8 import smtplib from email.mime.text import MIMEText fr ...
- TP框架中ajax post请求时提示404
ajax post请求时提示404错误 TP框架中ajax post请求时提示404 找了半天是 控制器中方法有错误! 下次再遇到去控制器方法中找一步一步找,肯定能找到,我是单词拼错了!
- javascript 闭包 通俗解释
代码段 function foo(){ var a = 2; function bar(){ console.log(a); } return bar; } var baz = foo(); baz( ...