1
我有一個Jetty的奇怪問題。一段時間後,服務請求,CPU使用率達到100%。我發現線程負責,這裏是在Eclipse中採取的堆棧跟蹤的幾樣:碼頭服務線程崩潰和使用100%CPU
SocketInputStream.read(byte[], int, int) line: 113
ByteArrayBuffer.readFrom(InputStream, int) line: 388
SocketConnector$ConnectorEndPoint(StreamEndPoint).fill(Buffer) line: 132
SocketConnector$ConnectorEndPoint.fill(Buffer) line: 209
HttpParser.parseNext() line: 289
HttpParser.parseAvailable() line: 214
HttpConnection.handle() line: 411
SocketConnector$ConnectorEndPoint.run() line: 241
QueuedThreadPool$3.run() line: 529
Thread.run() line: 680
Throwable.fillInStackTrace() line: not available [native method]
SocketException(Throwable).<init>(String) line: 196
SocketException(Exception).<init>(String) line: 41
SocketException(IOException).<init>(String) line: 41
SocketException.<init>(String) line: 29
SocketInputStream.read(byte[], int, int) line: 113
ByteArrayBuffer.readFrom(InputStream, int) line: 388
SocketConnector$ConnectorEndPoint(StreamEndPoint).fill(Buffer) line: 132
SocketConnector$ConnectorEndPoint.fill(Buffer) line: 209
HttpParser.parseNext() line: 289
HttpParser.parseAvailable() line: 214
HttpConnection.handle() line: 411
SocketConnector$ConnectorEndPoint.run() line: 241
QueuedThreadPool$3.run() line: 529
Thread.run() line: 680
ByteArrayBuffer.readFrom(InputStream, int) line: 388
SocketConnector$ConnectorEndPoint(StreamEndPoint).fill(Buffer) line: 132
SocketConnector$ConnectorEndPoint.fill(Buffer) line: 209
HttpParser.parseNext() line: 289
HttpParser.parseAvailable() line: 214
HttpConnection.handle() line: 411
SocketConnector$ConnectorEndPoint.run() line: 241
QueuedThreadPool$3.run() line: 529
Thread.run() line: 680
SocketConnector$ConnectorEndPoint.fill(Buffer) line: 209
HttpParser.parseNext() line: 289
HttpParser.parseAvailable() line: 214
HttpConnection.handle() line: 411
SocketConnector$ConnectorEndPoint.run() line: 241
QueuedThreadPool$3.run() line: 529
Thread.run() line: 680
這些痕跡採取無連接的客戶端,也就是說,它足以重新啓動受影響的主題並再次暫停以獲取堆棧跟蹤。有人有主意嗎?
編輯:是這個關係,我想知道:How to get Jetty thread dump?