mule启动问题(在sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:234))

时间:2017-02-16 23:53:07

标签: jetty mule

mule没有启动,它尝试启动挂起一段时间,并在一段时间后尝试再次启动,如重启。进行了线程转储。在分析线程转储时有一个警告,它表示" 3个线程是传递阻塞的。它表示锁定未被释放。"这可能是潜在的问题,可能与码头有关,但不清楚是什么。这是线程转储分析的一部分

0x00000000e0f43f40
Object
Held by:
  qtp383251638-61-acceptor-0-ServerConnector@7d75f858{HTTP/1.1}{0.0.0.0:7777}
Threads waiting to take lock:
  qtp383251638-62-acceptor-1-ServerConnector@7d75f858{HTTP/1.1}{0.0.0.0:7777}
  qtp383251638-63-acceptor-2-ServerConnector@7d75f858{HTTP/1.1}{0.0.0.0:7777}
  qtp383251638-64-acceptor-3-ServerConnector@7d75f858{HTTP/1.1}{0.0.0.0:7777}


"qtp383251638-61-acceptor-0-ServerConnector@7d75f858{HTTP/1.1}{0.0.0.0:7777}": running, holding [0x00000000e0f43f40]
    at sun.nio.ch.ServerSocketChannelImpl.accept0(Native Method)
    at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:422)
    at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:250)
    at org.eclipse.jetty.server.ServerConnector.accept(ServerConnector.java:321)
    at org.eclipse.jetty.server.AbstractConnector$Acceptor.run(AbstractConnector.java:460)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:601)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:532)
    at java.lang.Thread.run(Thread.java:745)

2 个答案:

答案 0 :(得分:1)

当接受者没有主动接受连接时,它们总是处于阻塞状态,这对于那种线程来说是正常的。

您的问题在其他地方 尽管如此,您还没有给出足够的详细信息来解决问题。 (对不起)

答案 1 :(得分:0)

解决了线程转储的问题。建立与消息代理的连接存在问题。

nid=0xe128 in Object.wait() [0x00007f41303ef000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at org.apache.activemq.transport.failover.FailoverTransport.oneway(FailoverTransport.java:613)
    - locked <0x00000000ddddecf0> (a java.lang.Object)
    at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:68)