Thread Dump分析まとめ文章
6584 ワード
InfinispanCacheLockロック、速度が遅い
Infinispanが提供するキャッシュインタフェース-分散キャッシュ
Attach Listener : started when the first attach request occurs
Exec Stream Pumper : Copies all data from an input stream to an output stream
入力ストリームからすべてのデータ出力ストリームにコピー
Process Reaper : (daemon thread) Linux kernel process management - maintains the process state so that resources can be freed/released/collected on process termination
Linuxカーネルのプロセスステータスの管理->プロセス終了時のリソースの管理
Connection.Receiver:ソケットとしてのInputStream受信と読み出し
FD_SOCK client connection handler,web,mon
java.net.SocketInputStream.socketRead
org.jgroups.protocols.FD SOCK:ソケットプロトコルによる障害検出プロトコルの検出に失敗
FD_SOCK pinger,web,mon
java.net.SocketInputStream.socketRead0 : SocketInputStream.read()でデータを待つ場合
I/O待ちスレッド状態はRUNNABLEです.Waitingじゃない
FD_SOCK acceptor,web,mon
java.net.PlainSocketImpl.socketAccept:同時接続者の数は、ユーザー数の増加に伴って一時的に増加します.
Thread
sun.nio.fs.LinuxWatchService.poll : thread running that busy-waits on poll
TcpServer.Acceptor [7800],null,null
java.net.PlainSocketImpl.socketAccept:同時接続者の数は、ユーザー数の増加に伴って一時的に増加します.
pool-1-thread
java.net.AbstractPlainDatagramSocketImpl.receive : Socket Timeout Exception
Timer
(まだ待ち時間あり)
default Accept
sun.nio.ch.EPollSelectorImpl.doSelect : EPollSelectorImpl
default I/O
sun.nio.ch.EPollSelectorImpl.doSelect : EPollSelectorImpl
management Accept
sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java)
remote-thread
java.util.concurrent.SynchronousQueue:SynchronousQueueにはバッファがありませんので、Queueを挿入する動作はQueueからインポートする動作と一緒に実行する必要があります.1つの動作しか発生しない場合は、別の動作を待つ必要があります.
transport-thread
java.util.concurrent.locks.AbstractQueuedSynchronizer : Condition implementation for a AbstractQueuedSynchronizer serving as the basis of a Lock implementation
同期のロックの作成
stateTransferExecutor
java.util.concurrent.SynchronousQueue:バッファキューなし
ClusterTopologyRegistrar
java.util.concurrent.locks.AbstraactQueuedSynchronize:同期のロックを作成する
CacheRegistry
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
InfinispanSessionManager
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
thread
java.util.concurrent.SynchronousQueue:バッファキューなし
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
- parking to wait for <0x00000007225bbb88>
- parking to wait for <0x00000007225bb5d0>
Controller-remote-thread-null
java.util.concurrent.Semaphore : counting semaphore
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
-駐車待ち<0 x 000007224 ad 558>(151個)(~5634個)
java.util.concurrent.locks.LockSupport.park:Basic thread blocking原語locksおよび他の同期クラスの元のスレッドblockを作成するために使用
logback:ログ記録フレームワークの抽象(インタフェース)ライブラリ、log 4 jに基づいて新しく作成されたログライブラリ
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
- parking to wait for <0x0000000728922090>
KeyAffinityService Thread Pool
java.util.concurrent.locks.LockSupport.park:Basic thread blocking原語locksおよび他の同期クラスの元のスレッドblockを作成するために使用
- parking to wait for <0x00000007286051b8>
xnio-file-watcher
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
ServerService Thread Pool
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
TransferQueueBundler,web,mon
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
DeploymentScanner-threads
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
ThreadPoolExecutor
Transaction Reaper Worker
com.arjuna.ats.arjuna.coordinator.TransactionReaper.waitForCancellations : Class to record transactions with non-zero timeout values, and class to implement a transaction reaper thread which terminates these transactions once their timeout elapses.
ゼロ以外のトランザクションを記録するクラス
トランザクション・リカバリ・スレッドを実装し、タイムアウト後にトランザクションを終了するクラス.
pool-5-thread
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
- parking to wait for <0x000000072c83cf60>
commons-pool-EvictionTimer
- locked <0x000000072c83d6a0>
expiration-thread
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
timeout-thread
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
Periodic Recovery
com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doPeriodicWait
Transaction Expired Entry Monitor
com.arjuna.ats.internal.arjuna.recovery.ExpiredEntryMonitor.run
UndertowEventHandlerAdapter
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
ConnectionValidator
background validation of managed connections for an InternalManagedConnectionPool
IdleRemover
: JBoss/JCA the IdleRemover runs asynchoronously and cleans up connections that have not been used reducing resource usage when it is not required
非同期で実行され、使用されていない接続をクリアして、不要な場合にリソースの使用を削減します.
16684
Infinispanが提供するキャッシュインタフェース-分散キャッシュ
Runnable
Attach Listener : started when the first attach request occurs
Exec Stream Pumper : Copies all data from an input stream to an output stream
入力ストリームからすべてのデータ出力ストリームにコピー
Process Reaper : (daemon thread) Linux kernel process management - maintains the process state so that resources can be freed/released/collected on process termination
Linuxカーネルのプロセスステータスの管理->プロセス終了時のリソースの管理
Connection.Receiver:ソケットとしてのInputStream受信と読み出し
FD_SOCK client connection handler,web,mon
java.net.SocketInputStream.socketRead
org.jgroups.protocols.FD SOCK:ソケットプロトコルによる障害検出プロトコルの検出に失敗
FD_SOCK pinger,web,mon
java.net.SocketInputStream.socketRead0 : SocketInputStream.read()でデータを待つ場合
I/O待ちスレッド状態はRUNNABLEです.Waitingじゃない
FD_SOCK acceptor,web,mon
java.net.PlainSocketImpl.socketAccept:同時接続者の数は、ユーザー数の増加に伴って一時的に増加します.
Thread
sun.nio.fs.LinuxWatchService.poll : thread running that busy-waits on poll
TcpServer.Acceptor [7800],null,null
java.net.PlainSocketImpl.socketAccept:同時接続者の数は、ユーザー数の増加に伴って一時的に増加します.
pool-1-thread
java.net.AbstractPlainDatagramSocketImpl.receive : Socket Timeout Exception
Timer
(まだ待ち時間あり)
default Accept
sun.nio.ch.EPollSelectorImpl.doSelect : EPollSelectorImpl
default I/O
sun.nio.ch.EPollSelectorImpl.doSelect : EPollSelectorImpl
management Accept
sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java)
Waiting
remote-thread
java.util.concurrent.SynchronousQueue:SynchronousQueueにはバッファがありませんので、Queueを挿入する動作はQueueからインポートする動作と一緒に実行する必要があります.1つの動作しか発生しない場合は、別の動作を待つ必要があります.
transport-thread
java.util.concurrent.locks.AbstractQueuedSynchronizer : Condition implementation for a AbstractQueuedSynchronizer serving as the basis of a Lock implementation
同期のロックの作成
stateTransferExecutor
java.util.concurrent.SynchronousQueue:バッファキューなし
ClusterTopologyRegistrar
java.util.concurrent.locks.AbstraactQueuedSynchronize:同期のロックを作成する
CacheRegistry
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
InfinispanSessionManager
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
thread
java.util.concurrent.SynchronousQueue:バッファキューなし
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
- parking to wait for <0x00000007225bbb88>
- parking to wait for <0x00000007225bb5d0>
Controller-remote-thread-null
java.util.concurrent.Semaphore : counting semaphore
-default task(エラーが発生し、Waitingの続行より遅い)
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
-駐車待ち<0 x 000007224 ad 558>(151個)(~5634個)
Timed Waiting
- parking to wait for <0x00000007414aefa8> : 스레드 스택 엄청 긺 (99개)
java.util.concurrent.ThreadPoolExecutor:通常、Executorsファクトリメソッドを使用して構成された複数の分散スレッドの1つで、各コミットタスクを実行するExecuterServicejava.util.concurrent.locks.LockSupport.park:Basic thread blocking原語locksおよび他の同期クラスの元のスレッドblockを作成するために使用
logback:ログ記録フレームワークの抽象(インタフェース)ライブラリ、log 4 jに基づいて新しく作成されたログライブラリ
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
- parking to wait for <0x0000000728922090>
KeyAffinityService Thread Pool
java.util.concurrent.locks.LockSupport.park:Basic thread blocking原語locksおよび他の同期クラスの元のスレッドblockを作成するために使用
- parking to wait for <0x00000007286051b8>
xnio-file-watcher
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
ServerService Thread Pool
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
TransferQueueBundler,web,mon
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
DeploymentScanner-threads
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
ThreadPoolExecutor
Transaction Reaper Worker
com.arjuna.ats.arjuna.coordinator.TransactionReaper.waitForCancellations : Class to record transactions with non-zero timeout values, and class to implement a transaction reaper thread which terminates these transactions once their timeout elapses.
ゼロ以外のトランザクションを記録するクラス
トランザクション・リカバリ・スレッドを実装し、タイムアウト後にトランザクションを終了するクラス.
Timed Waiting
pool-5-thread
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
- parking to wait for <0x000000072c83cf60>
commons-pool-EvictionTimer
- locked <0x000000072c83d6a0>
expiration-thread
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
timeout-thread
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
Periodic Recovery
com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doPeriodicWait
Transaction Expired Entry Monitor
com.arjuna.ats.internal.arjuna.recovery.ExpiredEntryMonitor.run
UndertowEventHandlerAdapter
java.util.concurrent.locks.AbstraactQueuedSynchronizer:同期のロックの作成{{AbstractQueuedSynchronizer:どうきのろっくのさくせい}}
ConnectionValidator
background validation of managed connections for an InternalManagedConnectionPool
IdleRemover
: JBoss/JCA the IdleRemover runs asynchoronously and cleans up connections that have not been used reducing resource usage when it is not required
非同期で実行され、使用されていない接続をクリアして、不要な場合にリソースの使用を削減します.
Reference
この問題について(Thread Dump分析まとめ文章), 我々は、より多くの情報をここで見つけました https://velog.io/@lamknh/Thread-Dump-분석-정리글テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol