perfino のパワフルな監視エージェントにより、最小限のオーバーヘッドで最大限の洞察を得られます。
![]() |
perfino |
アプリケーションのパフォーマンス最適化に perfino が選ばれる理由はここにあります。
1 ライセンスですべてを監視 - perfino では、監視できる JVM の数や記録されるビジネス トランザクションなどのメトリックに上限がありません。
perfino のライセンスでは、システムの規模やマイクロサービスの数に関わらず、問題なく監視できます。
perfino にログインすると、問題点の有無がダッシュボードに表示されます。該当するアプリケーションに適切なパフォーマンス レベルをきめ細かくコントロールします。ダッシュボードでは、より詳細のデータ ビューに掘り下げることができます。
perfino は、複数の VM にまたがるビジネス トランザクションを監視できます。メソッドレベルのサンプリングを実行する場合でも、EJB サーバーからさらに Web サービスに進行する Web レイヤーでの呼び出し操作はつながっています。コール グラフは、現在進行中の全体像だけでなく、過去に何が起こったかも示します。
何か日常的でない問題が発生した場合には、アラートの作成、メール送信、詳細データの収集などの具体的なアクションが必要です。perfino では、トリガーとアクションを使って緊急対応戦略を設定します。perfino の UI では、「ビジネス トランザクションがハングしたら、スレッド ダンプを取得して受信トレイに送信する」といったようなシナリオが簡単に実現できます。
perfino のテレメトリでは、1 分あたりのデータベース操作数など、監視する VM の重要なスカラー値を取得します。ダッシュボードと VM ビューのスパークラインとして、現行のトレンドを即時に把握できます。テレメトリのデータは決して破棄されることはなく、より高い解像度に変換されます。
perfino は、幅広いビジネス トランザクションをサーブレット コンテナー、EJB、RMI コールなどのサブシステムから自動的に検出します。さらに、ビジネス トランザクションにメソッド呼び出しを行ういくつかの方法も提供します。実用性に従って、perfino の UI で POJO メソッドを明示的に選択するか、重要なアノテーションを伝えるか、または API を使って独自のコードでトランザクションを作成できます。
JProfiler と同様に、perfino のトランザクションは累積されたコール ツリーに整理されています。詳細のレベルはユーザー次第で、何をビジネス トランザクションとして設定するかによります。非常に遅いトランザクションなどといったポリシー違反は、コール ツリーで別個に表示されますので、単独で分析することができます。また、perfino は、サーバーのビジネス トランザクションとブラウザーのページ読み込み時間を関連付けます。
JDBC 文や mongoDB その他の NoSQL データベースへのクエリなどといったデータベース操作は、perfino におけるファーストクラスです。「アプリケーション内でいちばん遅い SQL クエリは?」という疑問が生じた場合に、perfino は、該当するクエリの原因となるビジネス トランザクション指す累積バックトレースとともに適切な回答を返します。
perfino は、ビジネス トランザクションにおけるコール構造とメソッド レベルのホット スポットを調査するために、トランザクションごとのメソッド レベルのサンプリングを定期的に実行します。遅いトランザクションや非常に遅いトランザクションに関しては、自動的なメソッド レベルのサンプリングを設定できます。多くの場合、これらのサンプルは、データベースに無関係のパフォーマンスの問題を知るカギとなります。
2 つの時点におけるパフォーマンスの比較は、特にアジャイル リリース管理の場合に重要です。perfino では、選択したビジネス トランザクションやコール ツリー全体を無制限に振り返って比較できます。時間の経過に伴いデータはより大きな時間間隔で累積されます。比較機能は、データの表示に使用するビューに直接組み込まれています。
徹底的な防衛は、人生の多くの状況に適用できる戦略です。ビジネスが危険に直面している時には、利用できるあらゆるツールが必要となり得ます。perfino は、ネイティブの JVMTI サンプリングを導入し、最終的には JProfiler 接続用の VM も準備できます。プロファイラーのフル機能が必要となった場合には、すぐに利用可能な状態になっています。