この節では,アプリケーションサーバの特長について説明します。
アプリケーションサーバは,サービスを実行するための基盤(サービスデプロイメント)となる製品です。性能と信頼性を確保しながらユーザにサービスを提供する,アプリケーション実行環境を構築します。また,サービスとなるアプリケーションを開発する環境も構築できます。
アプリケーションの実行環境とアプリケーションの開発環境の特長を次に示します。
アプリケーションサーバは,標準仕様であるJava EEに準拠したアプリケーションの実行環境を構築します。Java EEに準拠したアプリケーションを実行する機能を持つサーバプロセスを,J2EEサーバといいます。
J2EEサーバは,J2EEコンテナ,J2EEサービス,J2EEリソースなどのJava EEで規定された仕様に従って,ユーザが開発したJ2EEアプリケーションを実行するために必要な機能を提供します。例えば,J2EEサーバでは,トランザクション管理やセキュリティ管理など,複数の業務に共通する処理を実行する機能を,J2EEサービスやJ2EEリソースによって提供しています。アプリケーション開発時には,アプリケーション内でJ2EEコンテナ,J2EEサービス,J2EEリソースなどで提供されているAPIを呼び出すことで,煩雑なコーディングをしないで,複数の業務で共通の処理を実現できます。
アプリケーションとJ2EEサーバの関係を次の図に示します。
図4-1 アプリケーションとJ2EEサーバの関係
アプリケーションサーバは,J2EEサーバを中心とした,アプリケーションの実行環境になるサーバ基盤です。情報システムの中間に位置し,ユーザの要求とデータベースなど,業務システム間の処理の受け渡しをします。
アプリケーションサーバ上では,ユーザの要求に応じたサービスを提供するためのJ2EEアプリケーションが実行されます。J2EEアプリケーションとは,J2EEサーバ上で動作する,実現したい業務内容に応じて開発されたアプリケーションです。
J2EEアプリケーションは,ユーザからの要求を受け付け,処理を実行し,結果をユーザに返します。また,処理内容によっては,データベースやメインフレームなどのほかのシステムとデータをやり取りして,必要な情報を取得して処理を実行します。
アプリケーションサーバを中心としたシステムでのリクエスト処理の流れを次の図に示します。
図4-2 アプリケーションサーバを中心としたシステムでのリクエスト処理の流れ
図で示した流れについて説明します。
アプリケーションサーバでは,安定稼働性や耐障害性が高く,優れたパフォーマンスを実現するシステムを構築できます。また,作業を円滑に実行するための機能によって,効率の良いシステム構築・システム運用を実現できます。