我的服務器來使用XFire處理Web服務請求在XFire中解析XML會導致CPU高?
但它的CPU被佔用100%,有時甚至1000%
當我restartd服務器,並有一定的要求後,這個奇怪的問題又出現了
我掃描的線程轉儲,即佔用CPU線程是這樣的:
httpWorkerThread-18028-39" daemon prio=10 tid=0xa0832800 nid=0x1d89 runnable [0x99e69000]
java.lang.Thread.State: RUNNABLE
at com.sun.xml.stream.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:892)
at com.sun.xml.stream.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:362)
at com.sun.xml.stream.XMLReaderImpl.next(XMLReaderImpl.java:568)
at org.codehaus.xfire.soap.handler.ReadHeadersHandler.invoke(ReadHeadersHandler.java:44)
at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
at org.codehaus.xfire.transport.DefaultEndpoint.onReceive(DefaultEndpoint.java:64)
at org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java:38)
at org.codehaus.xfire.transport.http.XFireServletController.invoke(XFireServletController.java:304)
at org.codehaus.xfire.transport.http.XFireServletController.doService(XFireServletController.java:129)
at org.codehaus.xfire.transport.http.XFireServlet.doPost(XFireServlet.java:116)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:753)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:846)
好像XFire的是解析XML文件,但隨着時間的推移,該線程轉儲沒有不同的所有的線程就像無限循環一樣。
不過,我沒有用的XFire足夠的經驗,我想不出什麼緣故,我google了很多問題
,找到這個topic,其現象就像我
然而,這個話題表明它可能是一個JVM的錯誤,並使用JDK5而不是JDK6。我嘗試使用JDK5來查看它是否有幫助
有沒有人遇到過這樣的問題?是什麼導致了這個問題,以及如何解決它?
thx很多。