Back ground
After run one week, thread count will increase to 70.
This will cause many waning alerts from monitoring system.
Diagnose
Start JConsole and connect to JMX.
All threads could be found in Thread panel.
Click one of them, you can see which Class and Method is causing the problem.
Root Cause
Timeout setting was’t been configured for socket call to XXXX service which used for YYYY verification. Once XXXX service didn’t return nothing for a long time, the thread will be hung there.