WebOTX Manual V10.4 (第4版) 目次を表示 |
3. WebOTX V6.3の新機能 |
ここでは、WebOTX V6.3からV6.31までのリリースで新しく追加された機能を説明します。
3.1. 全体 |
WebOTX V6.3での製品全体における機能強化項目について説明します。
V6.31 |
サポートOSの拡大
WebOTX V6.31より、2つのOSを新しくサポートしました。
Windows Server 2003 R2
セキュリティ性の高い Microsoft Windows Server 2003、Service Pack 1 を基盤に構築された、 Windows Server 2003 R2 での動作検証を完了しました。 対象となるプラットフォームは、x86 と x64 です。
Red Hat Enterprise Linux 4.0 (Intel Itanium)
WebOTX V6.3 で動作対象として追加した、Red Hat Enterprise Linux 4.0 (Intel x86) に加え、さらに Itanium プロセッサ上での動作環境もサポートしました。 このプラットフォームに対して、WebOTX は Web Edition と Standard-J Edition を提供します。
V6.3 |
サポートOSの拡大
WebOTX V6.3より、2つのOSを新しくサポートしました。
Windows Server 2003, x64 Edition
Microsoft Windows において、Intel 64/AMD64 などの x64系プロセッサ専用のOSである、 Windows 2003 x64 Edition に対応した実行基盤および開発基盤を提供します。 ユーザアプリケーションを64bit化することで、より大きなデータを扱うことができるようになります。
Red Hat Enterprise Linux 4.0 (Intel x86)
Red Hat Enterprise Linux OSにおいて、Intel x86プロセッサ上で動作する最新バージョン4.0をサポートしました。 バージョン4.0で強化された、マルチコア、ハイパースレッドCPUの性能を引き出すカーネル2.6を基に、3.0よりも さらに強力な安定基盤上でWebOTXアプリケーション・サーバが稼動します。
J2SE SDK 5.0のサポート
Java実行環境として、従来サポートしていたJava™ 2 Platform, Standard Edition SDK バージョン1.4.2に、最新バージョンの5.0を加えました。
(*) Itaniumプロセッサで動作する Windows用には、SDK 5.0が対応していません。
1.4.2を利用して下さい。
3.2. Webサービス |
新開発の高速XMLパーサー搭載により、SOAP通信の性能がV6.2に比べて10〜20%程度向上しました。これにより、HTTP-SOAPメッセージング分野で業界最高速(2006年3月現在、当社調べ)の性能を達成しました。
3.3. Webコンテナ |
Webコンテナは、Webアプリケーション Servlet/JSP を動作させるための実行基盤です。V6.3で次の機能の強化を行っています。
Webアプリケーションの実行性能の向上
Webアプリケーションの実行性能を向上しました。Tomcat 5.0.28 と比較すると、実行性能が10%〜20%上回っています。特に、Servletによって生成されるHTMLのサイズが16KB以上では、20%以上 Tomcat 5.0.28 を上回っています。
3.4. RMI-IIOP通信基盤 |
RMI-IIOPは、Java RMIのCORBA IIOPプロトコル拡張で、EJBをリモートで呼び出す際に用いられる下層の分散オブジェクト通信基盤です。 WebOTX V6.3では、この通信基盤について いくつかの新しい技術を加えました。
V6.31 |
EJB呼び出しにおけるパラメータの参照渡し
EJB仕様では、リモート・インタフェースのメソッドを呼び出しにパラメータの値渡しを必要としています。 これは分散オブジェクト間の呼び出しにおいては、パラメータのオブジェクト内容を保全するために必要な方式です。 その反面、高性能を得にくい欠点もあります。
WebOTX V6.31からは、サーブレット/EJBからリモート・インタフェースのEJBを呼び出す場合に、同一プロセスでかつ、共通のクラスローダを持つケースでパラメータの参照渡し方式を提供します。 これは、呼び出し元と呼び出され側が同じEARファイルか、同じEJB-JARファイルに含まれている場合に該当します。
通常 (既定値) の値渡しは、リモート・インタフェースのEJBメソッドを呼び出す場合に、値渡しセマンティックスを保つために全てのパラメータ (戻り値、引数) のコピーを作ります。 これは、呼び出しオーバーヘッドを増加させて、性能を劣化させます。
パラメータとして渡すオブジェクトに変更の必要がない場合は、そのコピーを作らずに、オブジェクト自身を渡しても危険ではありません。 そのような場合、参照渡しの設定をすると高い性能を得られます。
性能は、オブジェクトのサイズが大きくなるに従って伸びます。 例えば、javax.ejb.EJBHome#getEJBMetaData()の場合、約390倍の性能差を得ました。
参照渡しの設定位置は、WebOTX固有の配備記述子XMLファイル、nec-application.xml、nec-ejb-jar.xmlの中の<pass-by-reference>要素にtrue
を与えます。
V6.3 |
従来は、分散オブジェクト通信技術の一般的な手法によって、スタブとスケルトンをクライアント、サーバに配置していました。 WebOTX V6.3からは、新しくダイナミック・プロキシと呼ぶ技術を基に、スタブとスケルトンを使わないでリモート・オブジェクトにアクセスできるようになりました。
この機能の提供によって、次のような価値を生み出しています。
EJBコンポーネントの配備時間の短縮
これまでEJBコンポーネントをサーバに配備する過程では、EJBのリモート・インタフェースの数だけRMIコンパイルを行ってスタブとスケルトンを生成していました。 この生成処理は高いコストを要するため、配備が完了するまでの待ち時間が長くなる要素を抱えていました。
ダイナミック・プロキシ技術の適用によって、EJBコンポーネントの配備時間が非常に短縮されます。 例えば、Sunが公開するJ2EE BluePrintsと呼ばれるデモ・アプリケーションの中で、全てのEJBがリモート・インタフェースで構成される「Pet Store Demo 1.1.2」の配備時間は、従来の1/3に短縮されています。
RMI-IIOP通信基盤性能の向上
ダイナミック・プロキシでは、動的にリモート呼び出し先のインタフェースを解析します。 この解析には、リフレクションと呼ばれるコストが高い処理を伴います。 それに対して、従来のスタブとスケルトン経由による呼び出しは、スタブとスケルトンが静的なインタフェースとなるため、先の解析処理は不要となります。
この技術には、実行時にインタフェースを動的に解析することの性能劣化要因があります。 その要因を抑えるために、これまでのRMI-IIOP通信基盤の実装方式にチューニングを施し、従来比で最大30%の性能を向上させています。
3.5. Transactionサービス |
Transactionサービスは2フェーズコミットメント機能を提供しており、分散されたデータベースなどの複数のリソースに対する安全な更新を保証します。V6.3で次の機能の追加、および強化を行っています。
ACOS上トランザクションの2フェーズコミット参加
ACOSとオープンサーバのリアルタイム連携を実現するためのランタイムライブラリ「ACOS Access Toolkit」が提供するJDBCドライバと連携することで、本来は2フェーズコミットメントをサポートしていないACOS上のトランザクションをWebOTXが管理する2フェーズコミットメントトランザクションに参加させることができるようになりました。
つまり、これによってACOS上のデータベースと、オープンサーバ上のデータベース(Oracleなど)の同時更新が可能になります。昨今のレガシーマイグレーション需要の増加に伴い、従来の業務系システムの一部をオープン化し、メインフレームとオープンシステム間でアプリケーション連携を実現する事例が増えています。例えば、従来のデータはメインフレーム上で管理、新規に追加された部分のデータ管理はオープンサーバ上で、という要件には適しています。
トランザクション伝播時の処理性能を約30%向上
トランザクション性能の改善を行いました。特にトランザクションが伝播するケースについては、V6.2と比べ30%程度の向上を実現しています。例えば、複数EJBで行われる複数データベースの更新を2フェーズコミットを使って1つのトランザクションでまとめて管理するようなモデルでは、性能向上を実感できます。
3.6. 運用管理 |
V6.31 |
Standard-J Editionでの統計情報項目の追加
これまで未サポートだった、Standard-J EditionでのIIOP/RMI-IIOPに関する統計情報が採取できるようになりました。 このプロトコルを使った機能には、Object Broker、JNDIサーバ、EJBコンテナがあります。
これにより、Standard EditionやEnterprise Editionと類似して、統合運用管理ツールからアプリケーション・サーバに関する次の項目がドメイン単位で監視できるようになりました。
統合運用管理ツール上でのツリー: [(ドメイン名)]−[統計情報]−[(ドメイン名)]V6.3 |
WebOTX V6.3での運用管理における機能強化項目について説明します。
運用管理アシスタント機能
WebOTX V6.3ではStandard/Enterprise Editionにおいて自律運用を実現するため 運用管理アシスタント機能を新たに提供します。運用管理アシスタントは、今まで 容易ではなかったアプリケーションのチューニング支援を行ないオペレータの作業 を軽減することができます。
運用管理アシスタントの提供機能
3.7. JMS |
WebOTX V6.3でのJMSにおける機能強化項目について説明します。
再配信の遅延と回数制限
ロールバックされたメッセージの再配信する時間を遅延(V5からの機能) させる機能に加えて、再配信を有限回に制限することが可能になりました。 コンシューマが処理できないメッセージ自体の問題が原因で、 再配信が延々と繰り返し行われるような状況に陥り、システム全体の スループットが低下してしまう事態を未然に防ぐような場合に利用します。 制限値に到達したメッセージは破棄されますが、破棄せずに別な送信先に 蓄積することもできます(破棄メッセージの転送機能)。
破棄メッセージの転送機能
再配信の回数制限値を超過したメッセージや、有効期限に到達した未配信の メッセージはデフォルトでは破棄されますが、これらをあらかじめ用意した 送信先に転送することができる機能です。 この送信先からメッセージを取得するプログラムを作成し、ロギングしたり、 リカバリする処理を組み込むことが可能になります。
クライアントからのサーバ監視
クライアントアプリケーションのライブラリレベルで、JMS サーバとの接続を 定期的にチェックする機能です。 たとえば、サーバ/クライアント間のケーブルが抜けたような場合、 メッセージの送信を行わない受信アプリケーションでは、その異常を検出することができません。 これを、クライアント側のライブラリレベルで、定期的に監視パケットを発行することにより、 異常を検出できるようにしました。
3.8. EJBコンテナ |
EJBコンテナはStandard/Enterprise Editionにおいてクラスタ関連の機能の強化を行なっています。
ホームインタフェースの名前登録方法の追加
EJBのホームインタフェースの名前の登録契機として、従来はEJBのロード時のみでしたが、EJBのロードとは独立して、永続的に登録する動作を新たにサポートしました。 また、名前の登録先として複数の名前サーバが指定できるようになりました。
IOR多重化による負荷分散、フェイルオーバ
EJBのホームインタフェース、ステートレスSession Beanのリモートインタフェースのオブジェクトリファレンスに複数の接続先情報を含める(IOR 多重化)ことにより、複数ドメイン間のラウンドロビン負荷分散と障害時のフェイルオーバ機能を提供します。
ステートレスSession Beanを使用する場合は、ホームインタフェースを名前サーバから再取得すること無しに分散、フェイルオーバが可能となります。
3.9. 性能分析ツール |
WebOTX V6.3より新たに提供する性能分析ツールについて説明します。
GUIプロファイリングツールの提供
WebOTX V6.3では新たに性能分析のためのプロファイリングツールを提供します。 ヒープおよびCPU時間のプロファイリングデータをGUIツールより確認することが可能となります。 これにより容易に、Javaアプリケーションの性能分析を行いメモリやCPUを消費している箇所を調査することができます。
3.10. Web版統合運用管理コンソール |
従来、Webブラウザを用いた管理コンソールは、HTMLコンテンツ・ベースでした。 WebOTX V6.3からは、Macromedia Flashベースに刷新し、操作性、応答性を向上させました。
Web版統合運用管理コンソールの提供
V6.3では、新たに Flashを利用した Web版統合運用管理コンソールを提供します。 Flash を利用したブラウザベースの GUI により、分散した複数のサーバの運用操作が一箇所で行なえます。
3.A. 旧バージョンでの変更点 |
旧バージョンに関するものは、以下を参照してください。