Oracle TSAM の紹介
ここでは、以下の内容について説明します。
概要
Oracle Tuxedo システムおよびアプリケーション モニタ (TSAM) は、Oracle Tuxedo のアドオン製品です。Tuxedo は、ミッション クリティカルなアプリケーションを開発および使用する企業で広く使用されています。Tuxedo は、分散コンピューティング環境におけるインフラストラクチャ層として機能します。Tuxedo およびその上で実行されるアプリケーションが複雑なため、パフォーマンスの測定作業は非常に複雑になります。
Oracle TSAM は、Tuxedo でサポートするエンタープライズ コンピューティング環境のパフォーマンスに影響される主な領域を監視します。Oracle TSAM を使用すると、リアルタイムのパフォーマンスにおけるボトルネックとビジネス データの変化の監視、サービス モデルの確認、定義済みのしきい値の侵害通知などを行うことができます。
Oracle TSAM の機能
次に、Oracle TSAM の機能の一覧を示します。
Tuxedo システムを使用して、呼び出しの転送をトラッキングします。監視された呼び出しごとに一意の識別子が割り当てられ、呼び出しパス ツリーに複製転送されます。TSAM を使用すると、複数のマシンとドメイン間の呼び出しをトラッキングすることができます。監視された要求の呼び出しパス ツリーのトラッキングがリアルタイムで表示され、各段階のパフォーマンス メトリクスを利用できます。履歴呼び出しトラッキング データに基づき、呼び出しパターンをまとめます。特定の Tuxedo サービスを監視して、その応答時間、IPC キューの長さおよび実行状態を確認します。最新データや履歴データを使用して、データを照会することができます。Tuxedo の GWTDOMAIN および BRIDGE 全体のスループットを収集し、ビジネス データの流れのカーブをグラフィカルに表示します。XA API 仕様のトランザクションをトラッキングします。各 XA 呼び出しに使用される実行状態および時間を表示します。TSAM を使用すると、グローバル分散トランザクションを診断できます。Oracle TSAM マネージャ コンソールには、定義済みのしきい値に達したときに生成される「警告」の定義を作成する機能があります。イベントを Tuxedo にポストして、Tuxedo のイベント ブローカ サブスクライバで受信することができます。監視された呼び出しにパッケージされているメタ データを取得する API のプログラミングを行います。開発者側でアプリケーションに関する決定を動的に行うことができます。柔軟なモニタ制御。サンプリングは、間隔か比率に基づいています。アプリケーションを再起動せずに監視のオンとオフを動的に切り替えることができます。プラグイン メカニズムを使用して、Tuxedo のインフラストラクチャ レベルでパフォーマンス メトリクスを収集できます。TSAM およびその他のサード パーティ製品を統合する機能を提供します。Oracle TSAM マネージャに生のメトリクス データを送信する必要のない、強力なプラグイン レベル イベント トリガ。高度なイベント トリガ条件を得るために柔軟な FML 論理式をサポートしています。イベントは、Tuxedo イベント ブローカや Oracle TSAM マネージャにポストすることができます。Tuxedo 側のスケーラブルなサーバ監視は、小型、中型および大型の Tuxedo 実行時環境に合わせるように設計されています。J2EE に基づくソリューション。デプロイ、設定および使用が簡単です。これは、純粋な Web ベースのソリューションです。TSAM コンソールは、互換性のある Web ブラウザを使用して、どこからでもアクセスできます。
Oracle TSAM のコンポーネント
Oracle TSAM には、次の 2 つのコンポーネントがあります。
Oracle TSAM エージェント
Oracle TSAM エージェントは、Tuxedo 側のすべてのバック エンド論理を処理します。Oracle TSAM エージェントは Oracle TSAM マネージャと共に動作し、次のサブ コンポーネントが含まれます。
Oracle TSAM フレームワーク : Tuxedo 側の機能であり、パフォーマンス メトリクス収集動作を定義し制御します。Tuxedo の従来のインタフェースを使用して、既存の Tuxedo 管理スイートへ簡単に統合できます。Oracle TSAM プラグイン : Oracle TSAM フレームワークによって呼び出される拡張可能なメカニズムです。Oracle TSAM エージェントは、データを LMS (ローカル モニタ サーバ) に送信してから Oracle TSAM マネージャに送信するデフォルト プラグインを備えています。また、デフォルト プラグインはイベント トリガを確認し、必要に応じてイベントを生成します。LMS (ローカル モニタ サーバ) : LMS は、Tuxedo システム サーバです。Oracle TSAM のデフォルト プラグインは、LMS にデータを送信します。その後、LMS はそのデータを HTTP/XML メッセージ形式で Oracle TSAM マネージャに送信します。
追加データを処理するために、独自のプラグインを開発できます。カスタマイズ プラグインは、既存のプラグイン チェーンとリンクすることも、デフォルトのプラグインを置き換えることもできます。
方法usemicrosoft Excelへ
詳細については、「Oracle TSAM エージェント」を参照してください。
Oracle TSAM マネージャ
Oracle TSAM マネージャは、J2EE 技術に基づき構築されています。Oracle TSAM マネージャには、次のコンポーネントが含まれています。
Oracle TSAM データ サーバ : データ サーバは、LMS からデータを受け付け、データベースにそのデータを格納します。これは、J2EE アプリケーションです。Oracle TSAM コンソール : Oracle TSAM のプレゼンテーション層です。これは J2EE Web アプリケーションであり、互換性がある Web ブラウザを使用してアクセスできます。Oracle TSAM コンソールにログインすると、Oracle TSAM のすべての機能にアクセスできます。
詳細については、「Oracle TSAM マネージャ」を参照してください。
Oracle TSAM のアーキテクチャ
Oracle TSAM の概念
呼び出しパスのモニタ
Tuxedo は通常、ビジネスの計算論理シナリオを行うサービスを呼び出すクライアント プログラム (必ずしも Tuxedo のクライアント処理ではない) で使用されます。サービスの実装は、呼び出し側に対して完全に透過的です。このようなミドルウェアの透過性により、開発、デプロイメントおよびシステム管理に関する多くのメリットがあります。ただし、監視の観点から見ると、エンド ユーザや管理者が「舞台裏」で行われる処理について調べるのは困難です。Oracle TSAM の呼び出しパス モニタを使用すると、この問題を回避することができます。
呼び出しパス ツリーの定義
単純な Tuxedo アプリケーション呼び出しをするだけで、一連のサービス呼び出しが開始されます。使用されるサービスは、ツリーを構成します (「呼び出しパス ツリー」)。呼び出しパス ツリーでは、厳密には次の要素が定義されます。
最初のサービス要求を行うために使用されるサービスのタイプサービス呼び出しの深さ (つまり、呼び出しパス ツリーの深さ)サービスを呼び出すシーケンス例えば、クライアント A は、SVC1 を呼び出します。SVC1 は、SVC2 および SVC3 を呼び出します。呼び出しの転送。呼び出しパス ツリーのエッジ (情報の送受信方法) は、呼び出し側からサービス プロバイダに転送する情報を表します。情報は IPC キュー、BRIDGE 接続または DOMAIN 接続を使用して転送できます。各転送にかかった経過時間も記録されます。
イニシエータのモニタ
「イニシエータのモニタ」は、呼び出しパス ツリーのトラッキングを「開始」する処理です。処理には、Tuxedo クライアント、アプリケーション サーバまたはクライアント プロキシ サーバ (WSH/JSH) があります。一般的なシナリオでは、イニシエータのモニタによって tpcall/tpacall を呼び出した場合、呼び出しパスの監視が開始されます。この呼び出しに使用されるすべてのバックエンド サービスが、Oracle TSAM コンソールの呼び出しパス ツリーに表示されます。
| 注意 : | 現在、呼び出しパスの監視を開始できるのは、tpcall/tpacall だけです。その他の通信モデルはサポートされていません。 |
Tuxedo のアプリケーション サーバを使って、次の 2 つの機能が実行できます。
サービス実施時のすべてのサブ呼び出しは、元のイニシエータのモニタで開始された呼び出しパス ツリーの一部です (受信した要求がすでに監視されている場合)。これはイニシエータのモニタで、方針のモニタの定義に従ってサービス ルーチンで行われた呼び出しを使用します。
サービスのモニタ
サービスのモニタは、Tuxedo サービスの実行状態に基づいて行われます。呼び出しパスのモニタとは異なり、呼び出しの相関を考慮しません。サービスのモニタは、呼び出しパスの監視と同時に行うことも、別個に行うこともできます。
システム サーバのモニタ
Tuxedo には、BRIDGE および GWTDOMAIN という重要なシステム サーバがあります。BRIDGE は、Tuxedo ドメイン内の複数の Tuxedo マシンを接続します。GWTDOMAIN は、1 つの Tuxedo ドメインを別の Tuxedo ドメインに接続します。システム サーバのモニタによって、各ネットワーク リンク上のメッセージのスループット、保留の送信メッセージ、および待機応答メッセージをトラッキングします。
トランザクションのモニタ
Tuxedo の重要な用途の一つがトランザクションのモニタです。Tuxedo はデータベースなどの XA に対応するリソース マネージャを使用して、分散型トランザクション内のアクティビティを調整します。Oracle TSAM トランザクションのモニタによって、トランザクションで開始された各 XA 呼び出しがトラッキングされ、グローバルな分散型トランザクションのボトルネックを明確に特定できます。
方針のモニタ
方針のモニタによって監視動作を制御します。
NetBSDはMozillaが起動しません。
オンまたはオフ。Oracle TSAM のモニタは、特定の Tuxedo コンポーネントに対して動的にオンまたはオフを (特定のタイプ、または複数の種類の監視で) 切り替えることができます。Tuxedo コンポーネントには、特定のサーバ、グループまたはマシンを指定することができます。間隔に基づくモニタ。モニタは、特定の時間間隔に基づいて開始されます。呼び出しパスのモニタがその一例です。間隔に基づく方針のモニタにより、呼び出しパスが 60 秒間隔でトラッキングされるように指定することができます。比率に基づくモニタ。モニタは、実行数によって開始されます。サービスのモニタがその一例です。率に「5」を設定すると、サービスが 5 回実行されるごとに監視されることを示します。呼び出しパスのモニタの場合、率を「5」に設定すると、tpcall/tpacallの呼び出しが 5 回ごと実行されるごとに監視されることを示します。モニタのパフォーマンスへの影響を低減する柔軟性。Oracle TSAM モニタ制御を使用すると、使用しているアプリケーションのサイズ、負荷およびネットワーク アクティビティに基づき、方針のモニタを設定できます。
パフォーマンス メトリクス
Oracle TSAM パフォーマンス メトリクスは、以下のとおりです。
相関識別子 : 呼び出しパス ツリーを表す一意な識別子です。相関識別子は、イニシエータのモニタ プラグインによって生成されます。その形式を次に示します。
| 注意 : | DOMAINID:MASTERHOSTNAME:IPCKEY LMID PROCESSNAME PID TID COUNTER |
コード リスト 1 は、相関識別子の例を示します。監視された呼び出しは、Tuxedo ドメイン「TUXDOM1」のマシン「SITE1」上でプログラム「bankclient」、プロセス ID「8089」およびスレッド ID 1 を使用して開始されます。マスタは「bjsol18」であり、TUXCONFIG の IPCKEY は、「72854」です。
TUXDOM1:bjsol18:72854 SITE1 bankclient 8089 1 99
サービス名 : Tuxedo サービス名を示します。場所 : パフォーマンス メトリクスを送信する処理を識別する文字列を示します。IPC キューの長さ : IPC キュー内のメッセージ数を示します。IPC キュー識別子 : IPC キューの Tuxedo 識別子を示します。実行時間 : Tuxedo サービスまたは XA 呼び出しの実行にかかる時間を、ミリ秒の単位で示します。待ち時間 : トランスポート段階でのメッセージの待ち時間を示します。メッセージのサイズ : Tuxedo メッセージのサイズを示します。実行状態 :tpreturnサービスの戻りコードを示します。実行状態は、Tuxedo ATMI インタフェースによって定義されます。呼び出しフラグ : Tuxedo ATMI インタフェース内のtpcall/tpacallに渡されるフラグを示します。呼び出し型 :tpcall、tpacallまたはtpforwardを指定できます。経過時間 : 呼び出しが監視されてからの経過時間を示します。GTRID : Tuxedo のグローバル トランザクション識別子を示します。保留メッセージ数 : Tuxedo のネットワーク層に配信され、送信されるのを待つメッセージ数を示します。メッセージのスループット : システム サーバのモニタ間隔ごとに蓄積されたメッセージの総数と量を示します。応答を待つメッセージ数 : リモート ドメインからの応答を待つ GWTDOMAIN 内の要求数を示します。XA コード : トランザクション モニタ内の XA 呼び出しの戻りコードを示します。XA 名 : XA の呼び出し名を示します。
Oracle TSAM のユース ケース
Oracle TSAM は Tuxedo 上に構築され、独自のサービス、呼び出しおよびトランザクション トラッキング機能を備えています。通常、企業では広範囲に分散されたサービスを使用しており、1 つのクライアントの要求を処理するにも複雑なバック エンド サービスの調整が必要です。
管理者にとって、こうした対話の中でどのような処理が行われているかを理解するのは困難です。Oracle TSAM の呼び出しパス モニタを使用すると、この問題を回避することができます。
Oracle TSAM がアプリケーションとどのように動作するか理解するには、次の FAQ を参照してください。
アプリケーションについて
単純な呼び出しはどのように処理されますか
Tuxedo のクライアントまたはアプリケーション サーバに対して呼び出しパス モニタを有効にすると、単純な tpcall/tpacall の裏にあるすべての情報を検索できます。トラッキング ポイントは、複数のマシンとドメインにまたがっています。呼び出しパス ツリーには、次の情報が表示されます。
単語の韻は完璧pefect何
呼び出しをサポートするサービス呼び出し階層IPC キューからネットワークに渡される、各メッセージ フロー ステップの転送コスト使用される各サービスの実行状態すべての中間呼び出しの呼び出し型と呼び出しフラグ各サービスのキュー内の待ち時間と応答時間エンドツーエンド応答時間
サービスについてはどうですか
サービス モニタを使用すると、サービスの応答時間、IPC キューの長さおよび実行状態を測定できます。サービスモニタを使用すると、次の情報が提供されます。
サービスの実行状態の概要サービス アクティビティの傾向
Oracle TSAM により、最近、または指定した時間に実行が成功、または失敗したサービスの数を判別できます。Oracle TSAM により、平均応答時間も計算できます。これらは、サービスの品質を測定する重要な要素です。
Oracle TSAM により、サービス処理の傾向も表示できます。また、ピーク時間およびサービス要求が減少する時間も判別できます。
ネットワークがビジー状態かどうかわかりますか。
Oracle TSAM を使用すると、ローカル ドメイン ゲートウェイに接続されたネットワーク接続を監視できます。ビジー状態のリンクとそのデータの変化の傾向を簡単に検索できます。部門と企業間のビジネス データ フロー モデルについて、より深く理解できます。
トランザクションのへ参加者がわかりますか。
Oracle TSAM は、トランザクションの XA 呼び出しを監視します。トランザクションのパーティシパントは、トランザクション モニタ ページに表示されます。大規模な分散型トランザクションでは、トランザクション ブランチが遅い場合、トランザクション全体の完了が遅れる可能性があります。Oracle TSAM を使用すると、トランザクションのパーティシパント、および XA の呼び出しにかかる時間を調べることができます。
アプリケーションのパフォーマンスに関する問題の解決
サービスの応答時間が遅くなった原因に何が考えられますか。
特定の呼び出しの呼び出しパス モニタをオンにして、以下の項目を調べてください。
ネットワーク側にどれだけの時間が使用されているか。呼び出しパス ツリーの中で、最も時間のかかるサービスはどれか。サービスのルーティング先は、リモート マシンか、ドメインか。クライアントが応答を受けるまでの待機時間の問題か。
バック エンド サービスに失敗しましたが、どのサービスが失敗したかわかりません。
呼び出しパス モニタをオンにします。この呼び出しに対するサービスの実行状態を検索できます。
アプリケーション内にある呼び出しパス数は何種類ですか。
呼び出しパス モニタを使用して、適切なサンプル方針をオンにします。Oracle TSAM には、アプリケーションに存在する呼び出しパス数 (「呼び出しパターン」) が表示されます。
グローバル分散トランザクション処理の完了に時間がかかるのはなぜですか。
Oracle TSAM のトランザクション モニタをオンにします。トランザクションのパーティシパントによって使用される実行時間を表示できます。
ローカル トランザクションをリモート トランザクションに結び付けるにはどうしますか。
関連するすべての処理と GWTDOMAIN に対して、Oracle TSAM のトランザクション監視をオンにします。Oracle TSAM コンソールで、ローカルとリモート トランザクション間のトランザクション マッピングが表示されます。
ローカル ドメインがリモート ドメインからのリソースを使用するピーク時間はいつか、そしてどの程度ビジーなのか教えてください。
GWTDOMAIN 上の Oracle TSAM のシステム サーバ モニタを使用します。Oracle TSAM に情報が記録され、スループットの傾向が表示されます。
プログラムの要求情報を確認できますか。
適切な方針のモニタを使用して、呼び出しパス モニタをオンにしてから「tpgetcallinfo」を使用します。次の情報が提供されます。
要求が呼び出し側から出た時間のタイムスタンプ要求がサーバ IPC キューに入った時間のタイムスタンプクライアントの IP アドレス (ワークステーション クライアント、GWWS クライアント)
イニシエータのモニタ処理の tpgetcallinfo() でも、使用した総時間がわかります。
アプリケーション パフォーマンスの向上
サービスの粒度が高過ぎませんか。
場合によっては、要求をサポートする大量のサービスがパフォーマンスのオーバヘッドに加わる可能性があります。呼び出しパス ツリーを使用して調査します。分析の主な要素は、サービス数とツリーの深さです。
サービスは適切にデプロイされていますか。
サービスの一部が、別のサービスに比べてより頻繁に呼び出されています。呼び出しパス モニタを使用して情報を集め、サービスのデプロイメントを再検討します。最も使用度の高いサービスをローカル マシンおよび LAN に配置することをお勧めします。ドメイン サービス間のサービスは注意深く使用する必要があります。
設定したサーバ数が多すぎますか。
Oracle TSAM では、複数のドメインをサポートする Tuxedo のアプリケーションを集中的に表示します。Oracle TSAM コンソールを使用すると、設定されているドメイン数、マシン数、サーバ数およびサービス数を表示できます。
サービスに失敗した場合、または応答時間が定義されたしきい値を超えた場合に、通知されるよう設定できますか。
通知を可能にするには、次の 2 つの方法があります。一つは Oracle TSAM のプラグイン レベルのイベント トリガを使用する方法、もう一つは Oracle TSAM マネージャ コンソールを使用して警告を定義する方法です。
Oracle TSAM プラグイン イベント トリガOracle TSAM プラグイン イベント トリガは、確認の必要がある Tuxedo コンポーネント、およびイベントをトリガする必要があるメトリクス条件に対して FML 論理式をサポートしています。Oracle TSAM のデフォルト プラグインを使用して評価されるので、パフォーマンス メトリクスをOracle TSAM マネージャに送信する必要はありません。Oracle TSAM マネージャ コンソール警告管理
Oracle TSAM マネージャ コンソールを使用すると、必要な条件で警告を定義できます。しきい値に達すると、Oracle TSAM でイベントが生成されます。イベントは、Tuxedo イベント ブローカにもポストできます。
クイック スタート
Oracle TSAM の機能を既存の Tuxedo アプリケーションに追加するには、以下の手順に従います。
Oracle TSAM をインストールします。Oracle TSAM エージェントおよび Oracle TSAM マネージャをデプロイします。Tuxedo の設定を探します。方針のモニタを設定します。
Oracle TSAM エージェントおよび Oracle TSAM マネージャをインストールします。詳細については、『Oracle TSAM インストール ガイド』を参照してください。
詳細については、『Oracle TSAM デプロイメント ガイド』を参照してください。
Oracle TSAM マネージャ コンソール (例えば、http://localhost:8080/tsam) にログインします。
| 注意 : | TSAM コンソールに最初にログインするときに、admin のパスワードを設定する必要があります。 |
Tuxedo の設定を探すには、[TSAM|Administration|Tuxedo Configuration] を選択します。詳細については、『Oracle TSAM コンソール ユーザ ガイド』を参照してください。
方針のモニタを設定して、監視の対象と方法を定義することができます。方針のモニタは、TSAM 管理者側または TSAM エージェント側に設定できます。
詳細については、『Oracle TSAM エージェント ユーザ ガイド』の「モニタ方針の管理」および「モニタ方針の設定」を参照してください。
詳細については、『Oracle TSAM コンソール ユーザ ガイド』の「方針の管理」を参照してください。
• 典型的な方針のモニタ
[TSAM|Administration|Policy Management] を選択し、[Create] をクリックすると、[Policy Specification] が表示されます。[Name:] 入力フィールドに「tsampolicy」と入力します。
• 特定のサーバから開始された呼び出しパスの監視
• Oracle TSAM エージェントの結果を Tuxedo から確認
• 特定のサーバのサービスの監視
• ドメインのゲートウェイの監視
• 特定のグループのトランザクション内の XA 呼び出しの監視
Tuxedo の監視の開始
TSAM コンソールにログインし、Tuxedo システムおよびアプリケーションの監視を開始します。
呼び出しパスを監視するには、[TSAM|呼び出しパス] を選択します。
サービスを監視するには、[TSAM|サービス] を選択します。
システム サーバを監視するには、[TSAM|システム サーバ] を選択します。
トランザクションを監視するには、[TSAM|トランザクション] を選択します。
詳細については、『Oracle TSAM コンソール ユーザ ガイド』を参照してください。
0 コメント:
コメントを投稿