Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JBoss 5.0.1 AJP工作线程挂起?_Java_Jboss_Jersey_Ajp - Fatal编程技术网

Java JBoss 5.0.1 AJP工作线程挂起?

Java JBoss 5.0.1 AJP工作线程挂起?,java,jboss,jersey,ajp,Java,Jboss,Jersey,Ajp,最近,我们的JBoss AS遇到了一个问题,我们无法确定根本原因 我们的jboss服务器前面有一个apache负载平衡器,它使用端口8009上的AJP协议向jboss发送请求 最近,我们遇到了一个问题,工作线程被卡在系统中(我们通过jboss.web上的jmx控制台以及在发布线程转储时看到) 目前,我们为AJP连接设置了700个maxThreads,它需要3天才能完全达到最大值。 此时,我们重新启动jboss服务来解决这个问题 这些线程在线程转储中看起来像这样: **Thread: ajp-0.

最近,我们的JBoss AS遇到了一个问题,我们无法确定根本原因

我们的jboss服务器前面有一个apache负载平衡器,它使用端口8009上的AJP协议向jboss发送请求

最近,我们遇到了一个问题,工作线程被卡在系统中(我们通过jboss.web上的jmx控制台以及在发布线程转储时看到)

目前,我们为AJP连接设置了700个maxThreads,它需要3天才能完全达到最大值。 此时,我们重新启动jboss服务来解决这个问题

这些线程在线程转储中看起来像这样:

**Thread: ajp-0.0.0.0-8009-4 : priority:5, demon:true, threadId:90, threadState:RUNNABLE**
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
org.apache.coyote.ajp.AjpProcessor.read(AjpProcessor.java:1036)
org.apache.coyote.ajp.AjpProcessor.readMessage(AjpProcessor.java:1115)
org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:383)
org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:384)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
java.lang.Thread.run(Thread.java:662)

**Thread: ajp-0.0.0.0-8009-5 : priority:5, demon:true, threadId:91, threadState:RUNNABLE**
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
org.apache.coyote.ajp.AjpProcessor.read(AjpProcessor.java:1036)
org.apache.coyote.ajp.AjpProcessor.readMessage(AjpProcessor.java:1115)
org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:383)
org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:384)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
java.lang.Thread.run(Thread.java:662)

**Thread: ajp-0.0.0.0-8009-6 : priority:5, demon:true, threadId:92, threadState:RUNNABLE**
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
org.apache.coyote.ajp.AjpProcessor.read(AjpProcessor.java:1036)
org.apache.coyote.ajp.AjpProcessor.readMessage(AjpProcessor.java:1115)
org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:383)
org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:384)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
java.lang.Thread.run(Thread.java:662)

**Thread: ajp-0.0.0.0-8009-7 : priority:5, demon:true, threadId:93, threadState:WAITING**
- waiting on <0x42ee5ce8> (a org.apache.tomcat.util.net.JIoEndpoint$Worker)
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:485)
org.apache.tomcat.util.net.JIoEndpoint$Worker.await(JIoEndpoint.java:416)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:442)
java.lang.Thread.run(Thread.java:662)
**Thread:ajp-0.0.0-8009-4:优先级:5,demon:true,threadId:90,threadState:RUNNABLE**
java.net.SocketInputStream.socketRead0(本机方法)
java.net.SocketInputStream.read(SocketInputStream.java:129)
org.apache.coyote.ajp.AjpProcessor.read(AjpProcessor.java:1036)
org.apache.coyote.ajp.AjpProcessor.readMessage(AjpProcessor.java:1115)
org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:383)
org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:384)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
run(Thread.java:662)
**线程:ajp-0.0.0-8009-5:优先级:5,demon:true,线程ID:91,线程状态:RUNNABLE**
java.net.SocketInputStream.socketRead0(本机方法)
java.net.SocketInputStream.read(SocketInputStream.java:129)
org.apache.coyote.ajp.AjpProcessor.read(AjpProcessor.java:1036)
org.apache.coyote.ajp.AjpProcessor.readMessage(AjpProcessor.java:1115)
org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:383)
org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:384)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
run(Thread.java:662)
**线程:ajp-0.0.0-8009-6:优先级:5,demon:true,线程ID:92,线程状态:RUNNABLE**
java.net.SocketInputStream.socketRead0(本机方法)
java.net.SocketInputStream.read(SocketInputStream.java:129)
org.apache.coyote.ajp.AjpProcessor.read(AjpProcessor.java:1036)
org.apache.coyote.ajp.AjpProcessor.readMessage(AjpProcessor.java:1115)
org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:383)
org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:384)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
run(Thread.java:662)
**线程:ajp-0.0.0-8009-7:优先级:5,恶魔:真,线程ID:93,线程状态:等待**
-等待(org.apache.tomcat.util.net.JIoEndpoint$Worker)
java.lang.Object.wait(本机方法)
java.lang.Object.wait(Object.java:485)
org.apache.tomcat.util.net.JIoEndpoint$Worker.await(JIoEndpoint.java:416)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:442)
run(Thread.java:662)
等等

jboss上运行的web应用程序使用Jersey实现向客户端返回可用文件的列表,或者使用application/octet stream返回文件本身(将InputStream作为实体添加到Jersey响应中)

提前感谢,, 梅尼