Oracle Database 10gとの連携機能を備えたAPサーバーである。 連携機能によってフェールオーバーの切り替え時間を短縮した。 サーバー追加を容易にするために,クローニング機能も追加している。

 新しいOracle 10gという製品体系の中でJ2EEアプリケーション・サーバーとしての機能を実現するのがOracle Application Server 10gである。データベースとアプリケーション・サーバーの同時提供により,Oracle Database 10gの機能を最大限に発揮するミドルウエア機能を実装している。

 現在の標準的なアプリケーション・サーバーはJ2EE1.3に準拠し,HTTPサーバーを備え,クラスタリングとフェールオーバーを実現することが中心的な機能となっている。Oracle Application Server 10gでもこれらの機能を提供する。それに加え,Oracle Application Server 10gでは,企業情報ポータル,ビジネス・インテリジェンス,高速Webキャッシュ,モバイル/ワイヤレス,シングル・サインオン,コンテンツ管理などの機能も統合している。Oracle Application Server 10gはエンタープライズ・グリッドを実現するための機能を強化し,順次提供していく(表1)。さらにこれらの機能は,Oracle Database 10gと連携し,データベースと親和性の高いミドルウエアとなっている。

表1●Oracle Application Server 10gの主要コンポーネントの機能強化点
コンポーネント 機能強化のポイント
J2EE
アプリケーション・
サーバー
■パフォーマンス向上
■アプリケーション監視
■ソフトウエア・プロビジョニングとクローニング機能
■ワークロード管理
■ノーティフィケーション機能(自動フェールオーバーと自動リカバリ)
開発環境 ■新フレームワーク「Oracle Application Development Framework」の採用
■JavaアプリケーションのオブジェクトとRDBMSのデータのマッピング機能の実装
EAIツール ■Webサービス機能の強化
■アダプタの強化
SQL企業情報ポータル ■ウイザード形式の開発ツールの強化
モバイル ■マルチチャネル配信機能
シングル・サインオン ■Windows Active Directoryとのディレクトリ同期機能
Webキャッシュ ■キャッシュ対象の拡張
■ロード・バランスとクラスタリング機能の強化

内部構造を見直し,パフォーマンスが向上

 Oracle Application Server 10gでは,J2EEアプリケーション・サーバーのベンチマーク・テスト「SPEC jAppServer2002」でトップ・パフォーマンスを記録した*1。クライアント/サーバー時代には,サーバー,特にデータベース・サーバーがトランザクション処理を実行し,分散された高速なクライアント群がユーザー・インタフェースとビジネス・ロジックを担当していた。そして現在,3階層のWebブラウザによるアーキテクチャへの変化とJava言語の台頭によって,そのトランザクションそのものや,ビジネス・ロジック,ユーザー・インタフェースの生成ロジック(Webブラウザに表示するHTMLを生成するロジック)までもがJ2EEアプリケーション・サーバー上で行われるようになった。

 こうしたシステム構築で性能を重視しなければならないアプリケーション・サーバー層を高速化するために,Oracle Application Server 10gでは,内部構造の見直し,省略できる部分のロジックの簡素化,コード・サイズの縮小を実施した。その上,JavaVMの種類を特定することなくオープンな環境で動作することが保証されている。

 J2EE部分をサポートするOracle Application Server Containers for J2EE 10g(OC4J)は,JDK 1.4 JavaVMに準拠するコンテナで,JSP,Servlet,Enterprise JavaBean(EJB),Webサービス,などすべてのJ2EEサービスを実現する。このOC4J部分だけを使用するのであれば,OC4Jは非常に軽量で,必要とするディスク容量は約27Mバイト,メモリーは20Mバイト,さらにこのインストールは一般に15分未満と速く,非常に扱いやすいことが特徴になっている。

 J2EEの最新版への対応に関して,Oracle Application Server 10gはJ2EE1.3に準拠し,Oracle Application Server 10gの早い段階でのJ2EE1.4が予定されている*2

エンタープライズ・グリッドを支える新機能

図1●Oracle Enterprise Manager 10gの主な特徴
図1●エンタープライズ・グリッドためのOracle Application Server 10gの主な新機能
障害を早く検知したり,自動的に構成を変更したりする4つの機能を実装した。この機能を活用することで,自由にシステム・リソースを拡張/縮退できるようになる

 Oracle Application Server 10gは,J2EEアプリケーション・サーバーとしてだけでなく,エンタープライズ・グリッドを支えるためのいくつかの新機能を搭載している(図1[拡大表示])。

 なぜアプリケーション・サーバー層にグリッド機能が必要なのか?

 簡単に言ってしまえば,アプリケーション・サーバーはJ2EEという共通の仕様に基づいた実行環境を提供しているに過ぎない。Oracle Application Server 10gを導入し,その上で,Javaのアプリケーションをインストールすれば動作する。設定は必要だが,データベースのようにデータを蓄積するものでもなく,ディスクが必ずしも重要ではない。そのため,RISCとかIntelプロセッサといった同じアーキテクチャをもつマシンが並んでいれば,CPUの処理能力やメモリー容量などは多少違っていても,どこでJ2EEアプリケーションを実行してもよい。管理さえできれば,あるときには2ノードで動いている環境がピーク時には8ノードまで拡張してもよい。利用者が特定の設定に基づいて自由にマシン・リソースを拡張/縮退したり,あるいは新規にマシンを購入したときに手軽に現在動作しているOracle Application Server 10gとその上のアプリケーションのコピーが作成できるといった行為がグリッドによって可能になる。主な機能には,アプリケーション監視機能,ソフトウエア・プロビジョニングとクローニング,ワークロード管理,ノーティフィケーション機能がある。