我们遇到一个运行在tomcat 7.0.68上的java webapp突然阻塞 org.apache.catalina.loader.WebAppClassLoaderBase.loadClass
的问题服务器运行正常几天,突然一切都很快变慢,直到服务器死亡。
我们看到很多线程突然被一些XSLT转换代码阻塞在这个tomcat类上。我们重构代码,无需转到Tomcat loadClass,并将Tomcat配置为使用ParalellClassLoader实现而不是标准阻塞实现。
部分解决了这个问题;那就是:它出现了另一个地方,现在它的Hibernate会导致 org.hibernate.impl.SessionImpl.createQuery 同样阻塞线程。
相同的模式;这种情况发生在几天之后,没有明显的原因,比如一切运行良好的时候增加了流量。
关于什么可能导致这个以及在ThreadDump中寻找什么的指针将非常受欢迎,看起来loadClass上的阻塞线程更像是一个症状而不是原因。