Come analizzare correttamente un dump di thread java?


Sto cercando di capire di più sul dump del thread java. Sto usando JBOSS EAP 4.3.

Attualmente sto affrontando un problema di prestazioni in uno dei miei ambienti. improvvisamente l'utilizzo della CPU è salito al 700%. Ho preso il dump del thread ed è un file enorme.

Ho trovato molte voci di thread in attesa nel mio threaddump.

"http-172.16.101.99-8080-4" demone prio = 10 tid=0x0000000059d16800 nid = 0x5803 nell'Oggetto.attendere () [0x00002b00cf683000] Java.lang.Thread.Stato: ATTESA (on oggetto monitor) a java.lang.Oggetto.wait (metodo nativo) - in attesa di (un org. apache. tomcat.util. net. JIoEndpoint Worker Worker) a java.lang.Oggetto.aspetta (Oggetto.java:485) in org. apache. tomcat.util.net.JIoEndpoint Worker Worker. await(JIoEndpoint. java: 416) - bloccato (un org. apache. tomcat.util. net. JIoEndpoint Worker Worker) in org. apache. tomcat. util. net. JIoEndpoint Worker Worker. run(JIoEndpoint. java: 442) a java.lang.Thread.esegui (Thread.java:662)

I vuoi capire dall'alto in attesa di thread. cosa ha causato l'utilizzo della CPU è salito ?

Author: Nageswara Rao M, 2016-01-20