PSM 判定基準を使用したメモリの問題の監視
PMS はガベージコレクションによって JVM が応答不能になっていた時間を追跡します。サスペンド状態で経過した時間 (アクティブに作業を実行していない時間) を、カスタムグラフを作成することによって特定します。これには「Charting」 > 「Custom」 > 「Server Side Performance」 > 「Agent Based Measures」 > 「Java Virtual Machine」 > 「Suspension Time」オプションを使用できます。
推奨される Garbage First (G1) コレクターでは、JVM は 1 回で最大 200 ms の間アクティビティをサスペンドします。一般に、ThingWorx は 200 ms から 5000 ms の範囲の一時停止をはさみながら応答状態を維持します。次のグラフに、アプリケーション全体が長時間応答不能になっているシナリオを示します。
通常、GC アクティビティが遅い時間はメモリ使用量が多い時間に相当します。オペレーティングシステムレベルで示されるメモリ使用量には、Java が内部でそのヒープに使用しているメモリ量のデータは含まれていません。PSM でこの情報を取得するには、「Charting」 > 「Custom」 > 「Server Side Performance」 > 「Agent Based Measures」 > 「Java Virtual Machine」 > 「Used Memory」オプションを使用します。
Java が内部で一貫して多くのメモリを使用している場合、それがパフォーマンスのボトルネックとなる可能性があります。PSM を使用して GC によるサスペンド時間が長い時間やメモリ使用量が多い時間にドリルダウンし、原因となるその時間のユーザートランザクションを特定します。メモリの問題に対応する長い PurePath について調査する必要があります。
PSM はアプリケーションがメモリ不足状態の場合にインシデントを作成します。メモリ不足の状態では、PSM はメモリ使用量のスパイクがいつ発生したかを特定できるように、前述の 2 つのグラフを生成します。その時間に実行された PurePath を分析することによって、特定のトランザクションにドリルダウンできます。
推奨事項 - JVM のサスペンド時間やメモリ使用量をチェックする PSM アラートまたは毎日のスケジュールを設定します。PSM でメモリ不足インシデントがないか監視します。