Jetty Acceptor线程被阻止

时间:2015-02-24 18:45:36

标签: multithreading websocket jetty server

我在我们的登台服务器上运行jetty-distribution-9.2.7,我在线程转储中看到以下内容。看起来不太正常。

 48 qtp1275220739-48-acceptor-11@4b9666cf-ServerConnector@65a31764{HTTP/1.1}{0.0.0.0:80} BLOCKED
 |   |   +- sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:225)
 |   |   +- org.eclipse.jetty.server.ServerConnector.accept(ServerConnector.java:377)
 |   |   +- org.eclipse.jetty.server.AbstractConnector$Acceptor.run(AbstractConnector.java:500)
 |   |   +- org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
 |   |   +- org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
 |   |   +- java.lang.Thread.run(Thread.java:745)

运行相同的生产服务器的jetty版本并获得类似的情况(阻塞的线程)。不同之处在于我在分段中看到的线程块是使用接受器线程和生产服务器,它使用我们自己的代码。我检查了代码流中的所有可能死锁,但找不到。有什么建议吗?

- 253 qtp364089744-253 BLOCKED
 |   |   +- com.acti.chat.chatsession.SBChatEngine.sendChatToAvailableAgent(SBChatEngine.java:174)
 |   |   +- com.acti.chat.chatsession.ConnectionInitializer.connectActResReq(ConnectionInitializer.java:549)
 |   |   +- com.acti.common.util.ETTServiceUtil.submitInteraction(ETTServiceUtil.java:1540)
 |   |   +- com.acti.common.util.ETTServiceUtil.setArBeanToCache(ETTServiceUtil.java:595)
 |   |   +- org.xmpp.controller.CacheManagerController.routeActiveResponseToAgents(CacheManagerController.java:197)
 |   |   +- sun.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)
 |   |   +- sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 |   |   +- java.lang.reflect.Method.invoke(Method.java:606)
 |   |   +- org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:175)
 |   |   +- org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:421)
 |   |   +- org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:409)
 |   |   +- org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:774)
 |   |   +- org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
 |   |   +- org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
 |   |   +- org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
 |   |   +- javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
 |   |   +- javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
 |   |   +- org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:800)
 |   |   +- org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
 |   |   +- org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:224)
 |   |   +- org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
 |   |   +- org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
 |   |   +- org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
 |   |   +- org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
 |   |   +- org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
 |   |   +- org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
 |   |   +- org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
 |   |   +- org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
 |   |   +- org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
 |   |   +- org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
 |   |   +- org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
 |   |   +- org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
 |   |   +- org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
 |   |   +- org.eclipse.jetty.server.Server.handle(Server.java:497)
 |   |   +- org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
 |   |   +- org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:245)
 |   |   +- org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
 |   |   +- org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
 |   |   +- org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
 |   |   +- java.lang.Thread.run(Thread.java:745)

0 个答案:

没有答案