スレッドの競合の検出
Splunk AppDynamics は、インストゥルメント化されたアプリケーションのスレッドの状態に基づいてスレッドの競合を検出します。
JVMにおける以下のブロック状態(待ち状態)が識別されます。
- ロックの取得(
MONITOR_WAIT) - 条件の待機(
CONDOR_WAIT) - スリープ状態(
OBJECT_WAIT) - ブロッキングI/Oオペレーション
Object.wait
-
Thread.sleep -
Object.wait -
Thread.join LockSupport.parkNanos-
LockSupport.parkUntil -
LockSupport.park
ビジネス トランザクション フロー マップの [Potential Issues] ペインに、潜在的なスレッドの競合の問題に関するコントローラからの警告が表示されます。ここからブラウザを使用して、ビジネストランザクションまたはサービスエンドポイントのブロックされたスレッドと待機中のスレッドに関する追加情報にアクセスし、パフォーマンス問題の原因を特定できます。
以下のセクションでは、ブラウザを使用してビジネストランザクションとサービスエンドポイントの競合情報を表示する方法について説明します。