前へ     目次     索引     DocHome     次へ     
iPlanet Application Server 6.5 入門ガイド



第 1 章   iPlanet Application Server の概要


この章には次のトピックがあります。

iPlanet Application Server はパフォーマンス、スケーラビリティ、可用性を基本に設計されています。このためユーザが大幅に増加したり、電子商取引の Web サイトやインターネットを利用している企業での処理が大幅に増えても、iPlanet Application Server なら対応することができます。



アプリケーションサーバとは



アプリケーションサーバは、クライアントからバックエンドリソースへの接続、アプリケーションロジックの実行、およびクライアントへの結果の通知のためのフレームワークを提供します。アプリケーションサーバは 3 層処理モデルの中間層に位置しています。

図 1-1   

インターネット上のアプリケーションサーバ空間

もっとも一般的なアプリケーションサーバは JavaTM アプリケーションサーバです。iPlanet Application Server は Java アプリケーションサーバで、Java 2 Enterprise Edition (J2EETM) 仕様書に完全に準拠しています。J2EE は完全で安全な基盤を提供し、セキュリティ、開発、展開、コードの再利用、移植性の標準セットが数多く記述されているので、企業は移植可能でベンダに依存しないアプリケーションを作成することができます。

図 1-2    J2EE プラットフォームベースのアプリケーションサーバコンポーネント




iPlanet Application Server の機能



iPlanet Application Server 6.5 には次のような機能があり、現在利用できるアプリケーションサーバの中でももっともスケーラブルかつ堅牢で、パフォーマンスの高いものの 1 つです。


J2EE プラットフォーム

iPlanet Application Server は Java 2 Enterprise Edition (J2EE) に完全に準拠したアプリケーションサーバプラットフォームを提供します。J2EE アプリケーションモデルを使うと、開発者は下位レベルの処理を J2EE コンポーネントに任せてビジネスロジックに集中することができます。これによりアプリケーションとサービスを簡単に拡張してすぐに展開することができ、競争の激しい変化にすばやく対応することができます。

J2EE プラットフォームを介してオープンな標準アーキテクチャを提供することにより、iPlanet Application Server は、スケーラブルで可用性が高く、安全で信頼できる多層サービスの開発にかかるコストと複雑さの問題を解決します。詳細については、「iPlanet Application Server のアーキテクチャ」を参照してください。


業界標準コンポーネント

アプリケーションの開発は次の業界標準 Java に基づいて行います。iPlanet Application Server 6.5 がサポートする標準とコンポーネントは次のとおりです。

  • JDK 1.3 仕様

  • Java Servlet 2.2 仕様

  • Enterprise JavaBeans 1.1 仕様

  • JavaServer Pages 1.1 仕様

  • JDBC 2.0 コア仕様

  • JDBC 2.0 標準拡張仕様

  • JTA 1.0 仕様

  • JNDI 1.2 仕様

  • RMI-IIOP 1.0

  • JavaMail 1.0

  • アプリケーションのアセンブリと展開 (XML)

  • HTML

  • XML

  • LDAP

  • SNMP AGENTS

  • XA


高いスケーラビリティ

iPlanet Application Server は、プログラムを手直しすることなく、拡大するビジネスの需要に対応できるスケーラブルなアーキテクチャを持っています。開発者はユーザベースが拡大してもアプリケーションロジックを変更する必要はありません。たとえば、サーバクラスタが 3 つある企業に、iPlanet Application Server を稼働させたまま 50 台のサーバをダイナミックに追加することができます。リソースを追加するとトランザクションとリクエストの数の増加が可能になり、パフォーマンスが向上します。

アプリケーションの拡張は、主にサーバクラスタにサーバを増設するか、またはマルチ CPU システムに CPU を追加することによって達成できます。次にアプリケーションロジックを新しいサーバに展開します。分散アーキテクチャの本質を考えると、拡張とは iPlanet Application Server への統合であり、ビジネスソフトウェアは物理的に離れた場所にある複数のサーバで実行されます。通常、それぞれのサーバにはアプリケーションのコピーがあり、クラスタのどのサーバでモジュールを実行するかは管理エンジンが実行時に決定します。アプリケーションタスクは、リクエストをもっとも効率的に処理できるサーバに割り当てることができます。

iPlanet Application Server のアーキテクチャはスケーラブルであり、次のどちらも効率的に行うことができます。

  • アプリケーションパーティショニング

  • 分散データ同期 (DSync)


アプリケーションパーティショニング

iPlanet Application Server アーキテクチャはアプリケーションパーティショニングをサポートしています。この機能を使ってアプリケーションロジックを複数のサーバに分散することにより、アプリケーションを拡張して負荷の増加に対応することができます。

アプリケーションロジックをグループ化して、それぞれのグループを関連のある操作でまとめることができます。アプリケーションコンポーネントを 1 つまたは複数のグループに組み入れることができます。アプリケーションはアプリケーションロジックを共有することもできます。システム管理者は、iPlanet Application Server Administrator Tool のダイナミックな「ポイントアンドクリック」パーティショニング機能を使って次のことができます。

  • コンポーネントの負荷をリアルタイムで監視する

  • 負荷監視パラメータをただちに変更する

  • アプリケーションコンポーネントを管理する

  • クラスタ内の任意のマシンまたは全マシンにコンポーネントを展開する

  • コンポーネントやマシンの適性に合わせて展開する

  • コンポーネントを無効にし、すぐに利用できる状態にしておく

オーダが登録されると、オーダ処理コンポーネントは必ずサーバ 1 から呼び出されますが、チェックアウト関数は 3 つのサーバのどれからでも呼び出すことができます。アプリケーションのパーティションや分散の方法にかかわらず、アプリケーションは 1 つのまとまりとして機能します。

アプリケーションオブジェクトをグループ化して、それぞれのグループを関連のある操作でまとめることができます。たとえば、あるグループにオーダ処理に関する EJB がすべて含まれている場合、アプリケーションコンポーネントを 1 つまたは複数のグループに組み入れることができます。アプリケーションはアプリケーションロジックを共有することもできます。

システム管理者は、次の方法を使って、アプリケーションオブジェクトのグループをアプリケーションサーバにローカルまたはグローバルに展開することができます。

  • アプリケーションの一部が別々の iPlanet Application Server に独自に存在しているのに、単一のアプリケーションとして動作していることがあります。この場合、アプリケーションオブジェクトはもっとも効率的に実行できるサーバに格納することができます。たとえば、データをよく利用するアプリケーションオブジェクトは、データソースにもっとも近いサーバで実行すると、離れた場所のデータにアクセスすることによる遅延を避けることができます。

  • ロードバランスの取れたアプリケーションでは、同じアプリケーションオブジェクトのグループを複数のサーバに格納することができます。これにより、もっともよく利用するリソースを持つサーバでアプリケーションロジックを効率的に実行できます。

  • アプリケーションが特定のアプリケーションロジックのオブジェクトをダイナミックに共有することがあります。たとえば、ネットワーク上のすべてのアプリケーションは同じアプリケーションロジックを共有して、ユーザのログインと認証、またはクレジットカードの認可を行います。

アプリケーションパーティショニングを使うと、システム管理者はアプリケーションパフォーマンスの拡張とチューニングを驚くほど柔軟に行うことができます。さらに、複数のサーバにアプリケーションコンポーネントを格納しておくと、サーバのシャットダウン時にアプリケーションの高度な可用性が保証されます。


分散データ同期 (DSync)

分散データ同期により、プロセスでのクラスタ管理とデータ同期が提供され iPlanet Application Server のスケーラビリティを補助します。

クラスタは iPlanet Application Server サーバのセットで、セッション (クライアントの対話情報) とステート (データベースのオープンデータ、変数) のデータを 1 つのソースで共有します。クラスタは共有セッションとステートデータの統合を管理します。クラスタは、アプリケーションがセッションとステートデータを共有する必要があっても iPlanet Application Server を実行する必要がない場合に使います。

クラスタの使用中は、ほかのサーバから Sync Primary にアクセスしてセッションとステートデータを検索します。

クラスタは、管理ツールで簡単に管理し追加できます。DSync を使うと、クラスタの分散セッション情報 (ユーザ ID など)、ステートデータ (株価など)、およびステートフルセッション (ショッピングカートなど) を利用できます。サーバに障害が発生した場合も、データを失うことなく Sync Backup 上で情報を利用できます。

DSync とクラスタ管理は、iPlanet Application Server のスケーラビリティと可用性に関する機能です。DSync はサーバの可用性においても重要な役割を果たしています。「高い可用性」を参照してください。DSync に関する詳細は、『iPlanet Application Server 管理者ガイド』で説明されています。


高いパフォーマンス

iPlanet Application Server は、パフォーマンスの高い、マルチスレッド、マルチプロセスのアプリケーションサーバです。iPlanet Application Server は多数の同時リクエスト、データベースコネクション、およびセッションを処理し、高負荷の環境でも高いパフォーマンスを提供します。

iPlanet Application Server には次のような機能があり、Web サーバ、ほかの iPlanet Application Server マシン、異種のバックエンドデータソースとの間で高いパフォーマンスを提供します。

アプリケーションサーバ以外にも、ネットワークトポロジ、ネットワークとサーバのハードウェア、データベースアーキテクチャ、およびアプリケーションプログラミングなどがアプリケーションのパフォーマンスに影響を与えます。これらはこのマニュアルの範囲外になるので、ここでは説明しません。


ダイナミックロードバランス

iPlanet Application Server は、高負荷環境で最適なパフォーマンスレベルを提供するダイナミックロードバランスをサポートします。ロードバランスは、そのときのコンポーネントのリクエストをもっともうまく処理できるシステムで、それぞれのアプリケーションコンポーネントを処理して最適なパフォーマンスにするようにします。

ロードバランサはロードモニタが取得したロードとパフォーマンスの情報を使って、送られてくるリクエストを処理するのに最適なリソースを持つサーバを決定します。iPlanet Application Server の各インスタンスには、ロードバランスのプロパティに基づいてルートを決定する独自のロードバランスモジュールがあります。

ロードバランスはサーバで管理するか、プラグインで管理します。ロードバランスを有効にすると、iPlanet Application Server では、他の処理を行っているサーバが利用できるようになるまで待つ代わりに、リクエストを転送して利用可能なサーバで実行できます。あるサーバに負荷がかかりすぎると、別のサーバがリクエストの処理を引き継ぎます。ロードモニタでサーバリソースの利用状況を知ることができます。ウェイト指定のラウンドロビンのような単純なロードバランス方式を使って、収集されるサーバ統計の量を減らすことができます。

ロードバランスを使うには、実行時にアプリケーションロジックを処理するすべての iPlanet Application Server にアプリケーションロジックを分割する必要があります。システム管理者は、ロードバランスをアプリケーション全体に適用するかアプリケーションの一部に適用するかを決定する必要があります。

パフォーマンスを最適化してリソースを活用するには、システム管理者はそのロジックが実行できるように最適化されたサーバにアプリケーションロジックを展開します。リクエストされたロードバランスを実行するために管理者が使えるオプションにはさまざまなものがあります。「スティッキー」なロードバランスはその 1 つで、あるクライアントセッションで最初にリクエストを処理するサーバにすべてのリクエストを渡します。これはキャッシュするのに便利で、セッションやステート情報をサーバに分散できないオブジェクトにも便利です。

パーティション特性はクラスタのすべてのサーバにダイナミックに通知されます。iPlanet Application Server は定期的にロード統計を更新し、クラスタのほかの iPlanet Application Server に更新内容をブロードキャストします。ロードバランス要因に基づいて、リクエストはダイナミックにサーバに渡されます。ロードバランス要因は iPlanet Application Server Administration を使って設定されます。


データベースコネクションプーリング

パフォーマンスを向上させるため、iPlanet Application Server では、通常使う既存のコネクションを毎回確立し直すのではなく再利用するように、データベース接続をプールします。コネクションのプーリングによって、リクエストごとに新しいデータベースコネクションを作成するときに発生するオーバーヘッドを回避できます。

実行時にアプリケーションがデータベースへの新しいコネクションを作成する場合、実際には仮想コネクションを作成しています。iPlanet Application Server は「現実の」コネクションを作成して管理し、アプリケーションの仮想コネクションにリンクさせます。アプリケーションがコネクションを使用しない場合は、プールのコネクションには空きのマークが付けられます。同じパーミッションを持つ同じデータベースに新しいリクエストが出される場合 (セッションやアプリケーションは違うこともある)、iPlanet Application Server は新しくコネクションを作成する代わりに既存の空きコネクションを使用することができます。これをコネクションの共有と呼びます。空きコネクションは、指定したタイムアウトが過ぎても使用されなければアプリケーションサーバによって解放されます。

通常、Web アプリケーションはグループごとにユーザに類似のアクセスパーミッションを与えます。これをロールと呼びます。セキュリティ上の理由から、それぞれのロールはユーザに必要なコネクションパーミッションだけを与えます。たとえば、管理ユーザはログインすると管理者用に設定されたデータベースコネクションを使用します。管理者グループのメンバーではないユーザは、このコネクションリソースがプールで利用できる状態にあっても使うことはできません。ただし、制限されたコネクションが現在使用されていなければ、iPlanet Application Server はこれを閉じて制限されないコネクションを新たに作成し、制限されたコネクションリソースの使用を最適化します。これをコネクションの流用と呼びます。

システム管理者は iPlanet Application Server Administration Tool を使ってサーバのデータベースコネクションキャッシュを設定します。これにはキャッシュの初期スロット番号、空きコネクションのタイムアウトなどがあります。

システム管理者は iPlanet Application Server Administration Tool を使ってサーバのパフォーマンスを監視し、キャッシュで利用できるコネクションの数を調整します。これにより、システムリソースに対するキャッシュされたコネクションの割合を最適にすることができます。


結果キャッシュ

iPlanet Application Server では、アプリケーションロジックの実行結果をキャッシュして、アプリケーションパフォーマンスを向上できます。リクエストの結果を保存して、次に同じリクエストを受信したらすぐに結果を渡します。開発者は、この機能をアプリケーションで実行するように設定できます。

キャッシュが有効になっていると、iPlanet Application Server はアプリケーションロジックの入力パラメータと結果をキャッシュに保存します。次に iPlanet Application Server が同じリクエストを実行したとき、サーバはまずキャッシュをチェックして、入力されたパラメータがキャッシュの入力パラメータと一致するかどうかを確認します。一致する場合は、リクエストを再実行する代わりに、サーバはキャッシュの結果を取得します。結果キャッシュは、処理時間が長くなる大量のデータリクエストや頻繁にアクセスされるアプリケーションロジックには特に有効です。Java Server Pages のキャッシュも利用可能です。キャッシュは iPlanet Application Server の実行 (メイン) エンジンではなく iPlanet Application Server の Java エンジンで行われます。


データストリーミング

iPlanet Application Server にはデータストリーミング機能があります。ストリーミングにより、命令が完全に処理されるまで待たなくても、すぐにリクエストの結果を表示することができるので、パフォーマンスが向上します。アプリケーション開発者は、データのストリーミング方法を明示的に制御したり、自動ストリーミングを設定したりできます。

ストリーミングは、処理に時間がかかるクエリを含む大量のデータセットの場合、特に役に立ちます。たとえば、ユーザが 10,000 項目分の価格表をリクエストしたとします。アプリケーションは、データベースから 10,000 の項目すべてを検索するまで待機するのではなく、クエリを処理してたとえば一度に 40 項目が利用できるようになったら (または 1 ページ分を表示できるようになったら) ユーザに項目を表示します。


マルチスレッド機能

iPlanet Application Server はホストオペレーティングシステムのマルチスレッド機能をサポートします。アプリケーションでは、複数のスレッドでリクエストを処理することによってパフォーマンスを最適化しており、CPU リソースを最大限に活用できます。

アプリケーション開発者はアプリケーションのマルチスレッド機能を自動的に利用します。さらに、開発者はクエリ、挿入、更新、削除などのデータベース操作を非同期で実行できます。非同期操作により、大量のクエリなど時間がかかる操作をバックグラウンドで実行している間にアプリケーションでほかの作業をすることができます。

システム管理者は iPlanet Application Server Administration Tool を使って、次のようなマルチスレッド設定を行うことができます。

  • すべてのリクエストを扱う最小スレッド数と最大スレッド数

  • 非同期データベースリクエストを扱う最小スレッド数と最大スレッド数

通常、管理者はサーバのパフォーマンスを監視して利用できるスレッド数を調整し、システムリソースのスレッド割合を最適にします。


EJB セッションプーリング

ステートレスセッションビーンのインスタンスを再利用および再プールして、各呼び出しに対するオーバーヘッドを少なくすることができます。重要な役割を持つビジネスアプリケーションとして、EJB はステートレスセッションビーンを要求し、クライアントと iPlanet Application Server 間の会話型ステートを追跡します。短期間に多数のクライアントがアクセスする場合、システムは失われた各セッションを再利用することができます。


Web サーバとの最適な通信

iPlanet Application Server は Web サーバとの統合を強化してアプリケーションのパフォーマンスを最適化します。この統合は、Web Connector プラグインおよび対応するリスナを通して行われます。iPlanet Application Server では、NSAPI、ISAPI、APACHEAPI と、iPlanet、Microsoft、および CGI 互換 Web サーバに最適化された CGI をサポートしています。


高い可用性

多くの企業アプリケーションは 24 時間休みなく利用できる必要があります。iPlanet Application Server は「ダイナミックフェールオーバー」(フェールリカバリとも呼ばれる) および「ダイナミックロードバランス」を通じて可用性と信頼性の高いソリューションを提供します。

iPlanet Application Server を使うと、複数のサーバにアプリケーションの全部または一部を分散させることができます。その結果、あるサーバに障害が発生してもほかのサーバで引き続きリクエストを処理することができます。

図 1-3    ダイナミックフェールオーバー


iPlanet Application Server にはアプリケーション自動再起動機能があり、ダウンタイムを最小限にしています。さらに、iPlanet Application Server は、分散ユーザセッション情報と分散アプリケーションステート情報の保持とレプリケートを行います。クラッシュしたサーバのクラスタ内で、複数の iPlanet Application Server が動作しているかぎり、情報は保持されます。

開発者はアプリケーションにリカバリ機能とスケーラビリティ機能を組み込むことを考える必要がありません。このような機能は、実行時環境でホストするだけでアプリケーションに受け継がれます。詳細については、『iPlanet Application Server 管理者ガイド』を参照してください。


アプリケーション開発期間の短縮

iPlanet Application Server を使うと、以下に説明する機能によって企業アプリケーションを短期間で開発することができます。


多層アプリケーションモデル

アプリケーションモデルとは、ソフトウェアアプリケーションを機能コンポーネントに分解する考え方です。iPlanet Application Server のアプリケーションモデルにより、コードの再利用化とアプリケーションの高速展開が促進されます。

iPlanet Application Server アプリケーションモデルは、アプリケーションをプレゼンテーション、ビジネスロジック、およびデータアクセスの 3 つの層に分解します。プレゼンテーションはさらに、ページレイアウトとプレゼンテーションロジックに分けることができます。データアクセスは、データベースとほかのデータソースの両方を参照します。

アプリケーションモデルはコンポーネント指向型であり、Java テクノロジに基づいています。

アプリケーションコンポーネントとその機能」の表に、iPlanet Application Server 環境のアプリケーション機能を構成する主なコンポーネントを示します。

表 1-1    アプリケーションコンポーネントとその機能 

機能

アプリケーションコンポーネント

アプリケーションモデルの機能  

Java アプリケーション  

プレゼンテーションロジック  

Servlet  

ページレイアウト  

JavaServer Pages  

ビジネスロジック  

Enterprise JavaBeans  

データベースアクセス  

JDBC を使用する Enterprise JavaBeans、リレーショナルマッピングのオブジェクト  

ほかのデータソースへのアクセス  

エンタープライズコネクタ  

アプリケーションコンポーネントは次のどちらかのカテゴリに分類されます。


業界標準コンポーネント
Java アプリケーションを開発する場合は、できるだけ標準コンポーネントを使用することをお勧めします。標準コンポーネントには、Servlet、JavaServer Pages (JSP)、Enterprise JavaBeans (EJB) があります。

  • Servlet はページロジックとページ移動を定義する Java クラスです。Servlet はビジネスコンポーネントの作成や呼び出しもサポートします。

  • JSP は HTML、JSP タグ、Java を組み合わせて記述する Web ブラウザページです。

  • EJB はアプリケーションのビジネスルールとビジネスエンティティをカプセル化します。

さらに、アプリケーションコンポーネントは JDBC 呼び出しを行います。JDBC はデータベース接続の標準 API です。

以上の標準コンポーネントの使い方に関する詳細については、『iPlanet Application Server 開発者ガイド』を参照してください。


その他のコンポーネント
その他のアプリケーションコンポーネントには、AppLogic、HTML テンプレート、クエリファイル、およびエクステンションがあります。C++ で記述されているアプリケーションや、iPlanet Application Server 2.x 環境で実行されるアプリケーションでは、以上のコンポーネントを使用する必要があります。また、使用するアプリケーションが正しい企業データソースにアクセスする必要がある場合は、あらかじめ作成したエクステンションを使ったり、独自に作成する必要があります。

  • AppLogic は C++ や Java で記述したプログラム命令のセットで、アプリケーション内で明確に定義されたモジュール化タスクを実行します。

  • HTML テンプレートは HTML とダイナミックデータを一体化したテキストファイルで、書式化した出力を生成します。テンプレートには GX タグという特別なマークアップタグが使用されます。

  • クエリファイルは SQL コマンドを持つテキストファイルで、データベースのクエリや更新を行います。

  • エクステンションにより、ビジネスロジックのコンポーネントをカスタムリソースまたは社外秘のリソースに接続することができます。エクステンションは C++ または Java で記述された持続モジュールです。iPlanet Application Server にダイナミックに読み込まれ、エクステンションが存在するかぎり複数の AppLogic や EJB からアクセスされます。

    • iPlanet Application Server Integration Solution には、すぐに使用できるエクステンションが用意されています。iPlanet Application Server Integration Solution は MQSeries、Tuxedo、CICS、IMS、および R/3 アプリケーションで使用することができます。これらのアプリケーションは、iPlanet Application Server に展開されるアプリケーションと簡単に統合できます。

    • 開発者は iPlanet Extension Builder を使って独自のカスタムエクステンションを作成できます。iPlanet Extension Builder は、iPlanet Application Server に統合される別パッケージの GUI ベースのツールです。

AppLogic、HTML テンプレート、およびクエリファイルの詳細については、『iPlanet Application Server 移行ガイド』を参照してください。拡張機能の詳細については、iPlanet Extension Builder のマニュアルをご覧ください。


コアサービス

iPlanet Application Server は、高いパフォーマンスとスケーラビリティを持つトランザクションアプリケーションを構築、展開、および管理するためのアプリケーションサービスとシステムサービスを備えています。これらのサービスには、組み込みのステートおよびセッション管理、リクエストおよびトランザクション管理、結果キャッシュ、コネクションキャッシュなどがあります。


アプリケーション開発ツール

iPlanet Application Server は、J2EE 環境の JSP、Servlet、EJB を完全にサポートしています。iPlanet Application Server は先進的な統合開発環境への統合を強力にサポートしています。

アプリケーション開発者はさまざまなツールから選択してアプリケーションを構築することができます。ツールには簡単なテキストエディタから、ビジュアル Java エディタやビジュアル HTML エディタ、統合開発環境 (IDE) までさまざまなものがあります。

Forte for Java 製品ファミリは、入門レベルの企業アプリケーションをどのようなプラットフォームでも Java 言語で作成するためのもっとも優れた開発ツールです。これは完全なオープンソリューションであり、NetbeansTM オープンソースツールプラットフォームに基づいています。

iPlanet では、インターネット版ツールキット Forte for Java のプラグインも用意しています。開発者はこのツールキットにより提供される開発と展開の統合環境で Forte for Java の開発機能を十分に利用し、iPlanet Application Server 実行環境においてローカルでもリモートでも透過的に展開、テスト、およびデバッグができるアプリケーションを構築します。

また、プラグインを使って Servelet、JSP、および iPlanet Application Server 記述子のカスタマイザを WAR にパッケージすることもできます。開発者は、統合 Enterprise Java Beans (EJB) モジュールウィザードを使って、EJB テクノロジに基づくビジネスロジックを持つ、洗練された Web アプリケーションを簡単に開発し展開することができます。


セッションおよびステートの管理

iPlanet Application Server は Web アプリケーションが必要とするステートおよびセッションの管理機能をサポートします。

ステートおよびセッションの情報は分散環境にある各サーバに保存されます。たとえば、あるアプリケーションではログイン画面を表示し、ユーザに ID とパスワードの入力を求め、得られた情報をセッションオブジェクトに保存します。その後アプリケーションはこの情報を使って複数のデータベースにログインするので、ユーザは同じ内容を再入力する必要がありません。

同様に、オンラインショッピングのセッションオブジェクトでは、購入する製品のリスト (数量、価格など) と持続変数 (現在の注文総計) を格納します。

ステートおよびセッションの管理は、複数の複雑な操作があるアプリケーションでは特に重要です。アプリケーションロジックが異なるサーバに分割されている環境では、システム管理者は iPlanet Application Server Administration Tool を使って、1 つのサーバをすべてのステート情報のセントラルリポジトリとして動作するように指定することもできます。

セッションおよびステートの管理の詳細については、『iPlanet Application Server 開発者ガイド』を参照してください。


セキュリティ

iPlanet Directory Server は、アクセス制御リスト、SSL (Secure Sockets Layer)、およびパスワードを使って iPlanet Application Server アプリケーションにデータセキュリティを提供します。

また、iPlanet Application Server では Web サーバ通信がセキュリティで保護されており、SSL、HTTP、および HTTP チャレンジ応答認証をサポートします。ブラウザとデータソース間のセキュリティギャップを埋めるために、iPlanet Application Server では、トランザクション操作を安全に行うユーザ認証、cookie、およびデータベースアクセス制御をサポートしています。イベントの記録および追跡を行うことによって、認可されていないアクセスを検出および排除します。


ユーザ認証

iPlanet Application Server Administrator と iPlanet Directory Server はユーザ認証機能を提供し、認可されたユーザだけがアプリケーション、データベース、およびディレクトリにアクセスできるようにします。

サーバ管理者は Administrator のセキュリティツールを使って、指定したリソースにアクセスできるユーザ、グループ、およびロールを作成します。


データソースへの安全なアクセス

iPlanet Application Server はリレーショナルデータベース管理システム用の既存のロールアクセスのフレームワーク内で動作します。ユーザやアプリケーションは、データベースにログインしたあとでデータにアクセスすることができます。

開発者はアプリケーションを作成して、ユーザが一度ログイン情報を入力するとアプリケーションがセッションオブジェクトにその情報を保存できるようにします。以後はアプリケーションが必要に応じてバックグラウンドで最初のログイン情報を使って別のデータベースにログインするので、ユーザは新たに入力する必要がありません。

iPlanet Application Server は Web ブラウザとリレーショナルデータベースシステム間の安全なゲートキーパーとして機能し、バックエンドのデータを保護します。



製品コンポーネント



この節では、iPlanet Application Server のソフトウェアと製品コンポーネントについて説明します。この節には次のトピックがあります。


プログラミング API

iPlanet Application Server は Java 2 Platform Enterprise Edition が定める標準に準拠しています。iPlanet Application Server は業界標準の Java API をサポートします。特に、iPlanet Application Server は次の API とテクノロジをサポートしています。

  • JDK 1.2 仕様

  • Java Servlet 2.2 API 仕様

  • Enterprise JavaBeans 1.1 仕様

  • JavaServer Pages 1.0 仕様

  • JDBC 2.0 コア API 仕様

  • JDBC 2.0 標準拡張仕様

『iPlanet Application Server 開発者ガイド』で説明されているように、iPlanet Application Server 6.5 は JDBC 2.0 を完全にサポートしています。

iPlanet Application Server 6.5 でサポートされる業界標準の Java API の詳細については、該当する API の仕様を参照してください。すべての仕様書は installdir/ias/docs/index.htm からアクセス可能です。installdir は、iPlanet Application Server がインストールされている場所です。


システムサービスとアプリケーションサービス

システムサービスとアプリケーションサービスには、さまざまなアプリケーションレベルの機能とシステムレベルの機能が用意されています。これらのサービスにより、複雑なビジネスロジックとトランザクションベースのアプリケーションを開発、展開、および管理することができます。


サンプルアプリケーション

iPlanet Application Server には Web ベースのサンプルアプリケーションが含まれているので、iPlanet Application Server 環境で開発および展開するための技術をより短期間で習得することができます。

サンプルの 1 つにブックストアアプリケーションがあり、オンラインでの書籍の閲覧、検索、および注文をシミュレートしています。この Java アプリケーションでは Servlet、JavaServer Pages、Enterprise JavaBeans、および JDBC を使ったデータアクセスなどの業界標準コンポーネントが使われており、iPlanet Application Server アプリケーションモデルの例を示しています。オンラインブックストアアプリケーションのインストール方法と使い方については、『iPlanet Application Server 開発者ガイド』を参照してください。

また、バンキングアプリケーションのサンプルもあり、オンライン口座のユーザセッションをシミュレートしています。このサンプルでは、既存のアプリケーションを業界標準の Java アプリケーションモデルに移行して準拠させる方法を示しています。バンクアプリケーションのインストール方法については、『iPlanet Application Server 開発者ガイド』を参照してください。アプリケーションコードの詳細については、『iPlanet Application Server 移行ガイド』を参照してください。


コアアプリケーションサーバコンポーネント

iPlanet Application Server には次のコアコンポーネントがインストールされています。


Web Connector プラグイン

Web Connector プラグインを使うと、iPlanet Application Server と Web サーバ間で通信できるようになります。iPlanet Application Server をインストールすると、Web サーバが Web Connector プラグイン用に自動的に設定されます。つまり、Web サーバ上の必要なディレクトリと設定がすべて更新されます。

iPlanet Application Server と Web Connector プラグインの接続に問題がある場合は、『iPlanet Application Server 管理者ガイド』を参照してください。


iPlanet Application Server Administration Tool

iPlanet Application Server Administration Tool はグラフィカルユーザインタフェースを持つスタンドアロン Java アプリケーションで、1 つまたは複数の iPlanet Application Server を管理することができます。


iPlanet Application Server Deployment Tool

iPlanet Application Server Deployment Tool を使うと、J2EE アプリケーションをパッケージ化して展開できます。Administration Tool と同様に、Deployment Tool もグラフィカルユーザインターフェイスを持つスタンドアロン Java アプリケーションです。


iPlanet Directory Server

iPlanet Application Server などのディレクトリに対応したアプリケーションでは、iPlanet Directory Server をネットワークアクセスできる共通の場所として使用し、ユーザおよびグループ ID、サーバ ID、アクセス制御情報などの共有データを保存します。Directory Server のサービスとして、Distinguished Name Service (DNS) がもっともよく知られています。

iPlanet Directory Server にはグローバルディレクトリサービスがあり、さまざまなアプリケーションに情報を提供します。グローバルディレクトリサービスは、ディレクトリ情報の単一集中管理リポジトリで、アプリケーションとディレクトリ間のネットワークベースの通信を介して、すべてのアプリケーションからアクセスできます。iPlanet Directory Server では、LDAP (Lightweight Directory Access Protocol) を使って、アプリケーションからグローバルディレクトリサービスにアクセスします。LDAP プロトコルを使えば、ハードウェアおよびネットワークインフラストラクチャにわずかに投資するだけで、iPlanet Directory Server を数百万のエントリに対応させることができます。



iPlanet Directory Server は、Windows では slapd サービスとして、Solaris では ns-slapd として実行されます。



iPlanet Directory Server 4.13 を iPlanet Application Server とともにインストールすると、設定情報および認証情報が iPlanet Directory Server に格納されます。iPlanet Application Server をインストールすると、この情報のブランチを持つ Directory Server データ情報ツリー (DIT) が設定されます。詳細については、次のサイトに掲載されている『iPlanet Directory Server インストールガイド』を参照してください。

http://docs.iplanet.com

設定されるディレクトリは、アプリケーションサーバ設定情報の保存に使われる Directory Server の一部です。このディレクトリには、o=NetscapeRoot データツリーが含まれます。このデータツリーには、iPlanet Application Server によって、組織の識別に設定した接尾辞を持つ設定情報が格納されます。複数のサーバインストールでは、設定ディレクトリ上に設定を保存できます。

iPlanet Application Server とともに Directory Server コンポーネントをインストールする場合は、インストール先に別の Directory Server がインストールされている場合でも、このインストールを設定ディレクトリとして指定する必要があります。

Directory Server のさまざまな機能の概要については、『iPlanet Directory Server インストールガイド』を参照してください。


前へ     目次     索引     DocHome     次へ     
Copyright © 2002 Sun Microsystems, Inc. All rights reserved.

最新更新日 2002 年 3 月 6 日