Application Server は、エンタープライズアプリケーションの開発、配備、および管理のための堅牢な J2EE プラットフォームを提供します。主な機能に、トランザクション管理、パフォーマンス、スケーラビリティー、セキュリティー、および統合があります。Application Server は、Web パブリッシングから企業規模のトランザクション処理までを幅広くサポートします。一方、開発者は Application Server を利用して、JavaServer Pages (JSPTM)、Java サーブレット、および Enterprise JavaBeansTM (EJBTM) テクノロジをベースにしたアプリケーションを構築できます。
Application Server Enterprise Edition は、高度なクラスタリング技術とフェイルオーバー技術を提供します。これらの機能により、スケーラブルで高い可用性を備えた J2EE アプリケーションを実行できます。
クラスタリング - クラスタは、1 つの論理エンティティーとして一体となって動作するアプリケーションサーバーインスタンスの集まりです。クラスタ内の各 Application Server インスタンスは同じように設定され、各インスタンスには同じアプリケーションが配備されています。
クラスタに Application Server インスタンスを追加することによってシステムの容量が増加し、水平的なスケーリングが実現されます。サービスを中断せずに、クラスタに Application Server インスタンスを追加することができます。HTTP、RMI/IIOP、および JMS ロードバランスシステムは、クラスタ内の正常な Application Server インスタンスに要求を分散させます。
高可用性 - 可用性を有効にすると、クラスタ内の Application Server インスタンスをフェイルオーバーによって保護できます。1 つのアプリケーションサーバーインスタンスが停止すると、利用できなくなったサーバーに割り当てられていたセッションは別の Application Server インスタンスに引き継がれます。セッションの情報は、高可用性データベース (HADB) に格納されます。HADB は、持続的な HTTP セッションとステートフルセッション Beans をサポートします。
ここでは、図 1–1 に示す Application Server のハイレベルアーキテクチャーについて説明します。
コンテナ - コンテナは、J2EE コンポーネントのセキュリティーやトランザクション管理などのサービスを提供する実行環境です。図 1–1 は、2 つのタイプの J2EE コンテナ、Web および EJB を示しています。JSP ページやサーブレットなどの Web コンポーネントは、Web コンテナ内で実行されます。EJB テクノロジのコンポーネントである Enterprise JavaBeans は、EJB コンテナ内で実行されます。
クライアントアクセス - 実行時に、ブラウザクライアントはインターネット上で使われているプロトコルである HTTP で Web サーバーと通信することにより Web アプリケーションにアクセスします。HTTPS プロトコルは、セキュア通信を必要とするアプリケーションのためにあります。Enterprise Bean クライアントは、IIOP または IIOP/SSL (セキュア) プロトコルを介して ORB (Object Request Broker) と通信します。Application Server には、HTTP、HTTPS、IIOP、および IIOP/SSL プロトコル用の別個のリスナーがあります。各リスナーは、固有のポート番号を排他的に使用しています。
Web サービス - J2EE プラットフォームでは、Java API for XML-Based RPC (JAX-RPC) によって実装された Web サービスを提供する Web アプリケーションを配備できます。J2EE アプリケーションやコンポーネントは、ほかの Web サービスのクライアントにすることもできます。アプリケーションは Java API for XML Registries (JAXR) を介して XML レジストリにアクセスします。
アプリケーションのサービス - J2EE プラットフォームは、コンテナがアプリケーションのサービスを提供するように設計されています。図 1–1 は、次のサービスを示しています。
トランザクション管理 - トランザクションは作業の分割不能な単位です。たとえば、銀行口座間での資金の振り替えがトランザクションにあたります。トランザクション管理サービスは、トランザクションが完全に終了するか、またはロールバックされるようにします。
J2EE プラットフォームでは、アプリケーションが Application Server の外部にあるシステムにアクセスできます。アプリケーションは、リソースと呼ばれるオブジェクトを介してこれらのシステムにアクセスします。管理者はリソース設定を行う必要があります。J2EE プラットフォームでは、次の API およびコンポーネントを介して外部システムにアクセスできます。
JDBC - データベース管理システム (DBMS) は、データの格納、編成、および検索機能を提供します。大部分のビジネスアプリケーションは、アプリケーションが JDBC API 経由でアクセスするリレーショナルデータベースにデータを格納します。データベース内の情報は、多くの場合、持続性があるとされています。これは、ディスク上に保存され、アプリケーションを終了したあとも存在するためです。Application Server バンドルには PointBase DBMS が組み込まれています。
メッセージング - メッセージングは、ソフトウェアコンポーネント間またはアプリケーション間の通信メソッドです。メッセージングクライアントは、ほかのどのクライアントともメッセージの送受信を行います。アプリケーションは Java Messaging Service (JMS) API を介してメッセージングプロバイダにアクセスします。Application Server には JMS プロバイダが組み込まれています。
コネクタ - J2EE コネクタアーキテクチャーでは、J2EE アプリケーションと既存のエンタープライズ情報システム (EIS) との統合が可能です。アプリケーションは、コネクタまたはリソースアダプタと呼ばれる移行可能な J2EE コンポーネントを介して EIS にアクセスします。
JavaMail - JavaMail API を介して、アプリケーションは電子メールを送受信するために SMTP サーバーに接続します。
サーバー管理 - 図 1-1 の右下に、Application Server の管理者によって実行されるタスクの一部が示されています。たとえば、管理者は、アプリケーションを配備 (インストール) し、サーバーのパフォーマンスを監視します。これらのタスクは Application Server が提供する管理ツールを使用して実行します。
管理コンソールは、ナビゲートしやすいインタフェースとオンラインヘルプを装備したブラウザベースのツールです。このマニュアルでは、管理コンソールの使用手順を順を追って説明します。管理コンソールを使用するには、管理サーバーが稼動している必要があります。
Application Server をインストールするときに、サーバーのポート番号を選択します。選択しなかった場合は、デフォルトポートの 4849 が使用されます。また、ユーザー名とマスターパスワードも指定します。
管理コンソールを起動するには、Web ブラウザで次のように入力します。
https://hostname:port |
次に例を示します。
https://kindness.sun.com:4849 |
管理コンソールを Application Server がインストールされたマシンで実行する場合は、ホスト名として localhost を指定します。
Windows で、「スタート」メニューから「Application Server 管理コンソール」を起動します。
インストールプログラムにより、domain1 という名前のデフォルト管理ドメインがデフォルトポート番号 4849 で生成されます。また、ドメイン管理サーバー (DAS) とは分離したインスタンスも作成されます。インストール後は、管理ドメインを作成して追加できます。各ドメインは、一意のポート番号を持ったドメイン管理サーバーをそれぞれ持っています。管理コンソールの URL を指定する場合は、管理するドメインのポート番号を使用してください。
設定にリモートサーバーインスタンスが含まれる場合は、ノードエージェントを作成してリモートサーバーインスタンスを容易に管理できるようにします。サーバーインスタンスの作成、起動、停止、および削除は、ノードエージェントの役割です。ノードエージェントを設定するには、コマンド行インタフェース (CLI) のコマンドを使用します。
asadmin ユーティリティーは、コマンド行ツールです。asadmin ユーティリティーと、このユーティリティーに関連するコマンドを使用して、管理コンソールで実行可能な一連の同じタスクを実行します。たとえば、ドメインの起動と停止、サーバーの設定、アプリケーションの配備などを実行します。
シェルのコマンドプロンプトからこれらのコマンドを使用するか、または別のスクリプトやプログラムからこれらのコマンドを呼び出します。これらのコマンドを使用して、定型管理タスクを自動化します。
asadmin ユーティリティーを起動するには、次のように入力します。
$ asadmin |
asadmin 内で使用可能なコマンドを一覧表示するには、次のように入力します。
asadmin> help |
シェルのコマンドプロンプトで、asadmin コマンドを次のように実行することもできます。
$ asadmin help |
コマンドの構文と例を表示するには、help のあとにコマンド名を入力します。次に例を示します。
asadmin> help create-jdbc-resource |
指定したコマンドの asadmin help 情報が、コマンドの UNIX マニュアルページに表示されます。これらのマニュアルページは HTML 形式でも利用できます。
Application Server Management Extension は、すべての Application Server 設定を表示する API であり、AMX インタフェースを実装する、使いやすいクライアント側の動的なプロキシとして JMX 管理対象 Beans を監視しています。
Application Server Management Extension の使用についての詳細は、『Application Server 開発者ガイド』の JMX に関する章を参照してください。