Hello Prateek!
Greetings. As Sai has pointed out there 1169 threads in the 'XNIO-2' thread pool. Majority of them (i.e. 1013 threads) are not doing anything. They are in WAITING state with following stack trace:
at java.lang.Thread.run(Thread.java:748)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at sun.misc.Unsafe.park(Native Method)
These many threads has a potential to make cause unresponsiveness in the app. Can you investigate:
a. Why 'XNIO-2' thread pool is creating these many threads?
b. Why idle threads aren't dieing down in 'XNIO-2' thread pool?
Can you check whether you are settings idle time out window, min thread pool size properly in this 'XNIO-2' thread pool?
Edit your Comment