2009年10月13日 08時00分 UPDATE
特集/連載

エージェントベースの監視は効果的か?SOAおよび非SOA環境でのトランザクション監視の3つのポイント

Webサービスのベテラン専門家が、SOAや非SOA環境でのトランザクション監視を改善するための3つのポイントを紹介する。

[Jack Vaughan,TechTarget]

 米TechTargetは先ごろ、SOA(サービス指向アーキテクチャ)のテストにかかわる関係者数人に取材する機会を得た。その1人がマムーン・ユヌス氏だ。同氏はWebサービスのベテラン専門家で、米Crosscheck NetworksのCEOを務めている。

 われわれはユヌス氏に、SOAや非SOA環境でのトランザクション監視を改善しようとしている人のために、ポイントを3つアドバイスしてほしいと頼んだ。

 もちろん「トランザクション監視とは何か」については、いろいろな考え方がある。SOAにも同じことが言える。そこでまず、定義についてのユヌス氏のコメントを紹介しよう。当然のことながら、同氏は現在のエンドツーエンドのトランザクション監視と、CICS(Customer Information Control System)を区別している。

 「厳密に言えば、さまざまなクライアントアプリケーションで使える再利用可能なオペレーションを含むアプリケーションは『サービス化』されており、従ってSOAに基づいている。しかし、今回の説明では、SOAは、WebサービスベースのモダンなSOAであると想定してよい。非Webサービスベースの環境(非SOA)については、アプリケーションを2つのカテゴリーに分類しようと思う。Webサービススタックを使わない3層型のクライアント/サーバ、メインフレームアプリケーションと、モノリシック型のグリーンスクリーンメインフレームアプリケーションだ。どちらのカテゴリーでも、トランザクション監視の対象は、特定の場所に限られており、SOA環境とは異なり分散されていない。このため、トランザクション監視は、データベースやアプリケーションサーバ、あるいはCICSアプリケーションといったアプリケーションコンポーネントの機能を組み合わせて実現される」

 さらに、ユヌス氏はこう続ける。

 「一般的に本番稼働前に行われるコードレベルやバイトレベルの厳密な監視では、JMX(Java Management Extensions)やSNMP(Simple Network Management Protocol)などさまざまな監視技術やログアグリゲータが、バイトレベルのインスツルメンテーションと監視により、ビジネス機能の実行状況を詳細に明らかにする。コードレベルの監視が本番稼働中に行われることはめったにない。アプリケーションのパフォーマンスに影響を与えるからだ」

 なお、以下に示すユヌス氏のアドバイスにもあるように、トランザクションを効率的に監視する上で非常に重要なのは「監視プログラムをどこに配置するか」だ。ユヌス氏の主張は、「エージェントベースの監視は問題を引き起こす。特に、既存システムのインスツルメンテーションにおいてそれが顕著だ」というものだ。もちろん、エージェントの推進者は、エージェントが既存システムにおいて必ず悪影響を及ぼすという見解に異議を唱えるだろう。また、暗号化は一部の人には最優先課題ではないだろうが、ユヌス氏にとっては明らかにそうだ。よくあることだが、さまざまな観点があり得るということだ。

 では、トランザクションを適切に監視するためのポイントとしてユヌス氏が挙げた3つを具体的に見ていこう。

1. トランザクションパス上の重要な監視ポイントを特定する

 対応すべきビジネス課題に基づくトランザクション監視要件を満たすのに必要な監視ポイントを選択する。例えば、「どの外部パートナーが関与したか」「そのパートナーのSLAが満たされているか」が分かればよい場合は、データキャプチャーポイントは、ネットワークエッジに設けるだけでよく、それはXMLゲートウェイかもしれない。しかし、エンドツーエンドのトランザクション監視を行う必要がある場合は、トランザクションフロー全体にわたってデータキャプチャーポイントを設けなければならない。

2. 監視による悪影響ができるだけないようにする

 自社環境の運用シナリオとライフサイクルに基づいて監視技術を選択する。既に本番稼働に入っている場合、すべてのJavaコンテナや.NETサーバにエージェントベースの技術を展開すると、大きな悪影響が生じる。本番システムに手を加えることは、CIOが最もしたくないことであり、ビジネストランザクションが処理されている場合はなおさらだ。監視を行わないと企業は売り上げを失うかもしれないが、エージェントのインストール、有効化、リグレッションテストを行う必要から本番アプリケーションをオフラインにしたら、企業は確実に売り上げを失う。本番環境では、XMLゲートウェイなどのプロキシを使ってトランザクションをキャプチャー、監視することを考えるべきだろう。悪影響がない方法でデータをキャプチャーしたら、それらを集約し、相互に関連付け、SOA環境全体にわたってトランザクション状態を確認しなければならない。

3. SOAおよび非SOAトラフィックの監視では、強力な復号機能が重要

 ビジネストランザクションは通常、保護されている。保護されていない場合には、暗号化や署名、アイデンティティー管理、難読化ツールによって保護しなければならない。こうした方法で保護されたトランザクションを監視するには、補完的な機能を実行する必要がある。例えば、暗号化されたデータは、まず復号しなければビジネストランザクション監視に利用できない。総合的な監視統計を得るには、強力なデータ解読機能を持つトランザクション監視ソリューションが必要というわけだ。データを保護するだけでなく、こうした適切なソリューションで読み取る仕組みを用意することで、包括的なトランザクション監視が可能になる。

この記事を読んだ人にお薦めのホワイトペーパー

この記事を読んだ人にお薦めの関連記事

Loading

注目テーマ

ITmedia マーケティング新着記事

news104.jpg

サンリオ特設サイトにプッシュ通知機能、Mobifyが提供
ドーモは、WebサイトからスマートフォンやPCにプッシュ通知を送る「Webプッシュサービス...

news009.gif

「インストール」はゴールではない――アプリ広告の効果をどう検証するのか?
重要度を増すモバイルアプリにおいて、ビジネス視点から見て合理的なプロモーション効果...

news095.jpg

「スマホ動画は縦向き」が初めて多数派に──モバーシャルが動画視聴実態調査
動画制作と動画マーケティング支援のモバーシャルが20〜50代の男女700人を対象に、スマー...