首页 > 解决方案 > JBoss 上的线程转储,停放的线程每天都在增长,直到服务器变得无响应

问题描述

背景:我们正在运行 JBoss EAP 7。我们正在向其部署 Spring Boot 应用程序(作为战争部署)。每天处于 WAITING(停车)状态的线程数增加约 400,直到大约 30 天后达到服务器限制”。

有问题的线程都如下所示,但池编号和等待条件不同:

pool-339-thread-2" #3023 prio=5 os_prio=0 tid=0x000000001744a800 nid=0x1028 waiting on condition [0x00007fa9f927c000]
   java.lang.Thread.State: WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for  <0x000000075781d2f0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
    at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
    at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
    at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)

   Locked ownable synchronizers:
    - None```

Does anyone have any insights into as to why this might be occuring?

Much appreciated.

标签: javaspring-bootjbossthreadpool

解决方案


推荐阅读