TOPシステム開発> はじめに
JBoss Enterprise Application Platformの全貌
JBoss Enterprise Application Platformの全貌

第3回:JBoss Enterprise Application Platformのアーキテクチャを理解する

著者:レッドハット  三木 雄平   2007/8/28
1   2  3  次のページ
はじめに

   今回は「第2回:JBoss Enterprise Application Platformを操作する」でインストールしたJBoss Enterprise Application Platfrom 4.2.0(以下、JBoss EAP)のディレクトリ構成について解説します。

   JBoss EAPのアーキテクチャとディレクトリ構成を理解することで、プロジェクトの設計や導入、運用時はもちろん、パフォーマンスチューニングやトラブルシューティングの際にも役に立つでしょう。

JBoss EAPのディレクトリ構成

   JBoss EAPのディレクトリ構成について確認してみましょう。インストールディレクトリの直下には下記のディレクトリが配置されます。

ディレクトリ名 説明
doc プロダクトドキュメントを含む。GUIインストーラ付モジュールにのみ付属
jboss-as JBoss EAPのメインディレクトリ。起動するためのスクリプト、ライブラリ、設定ファイルなどを含む
seam HibernateとJBoss Seamフレームワークのためのファイルを含む
uninstaller アンインスーラを含む。GUIインストーラ付モジュールにのみ付属

表1:インストールディレクトリの直下のディレクトリ一覧

   次にメインディレクトリであるjboss-asを確認してみましょう。これは表2のようになっているはずです。

bin 起動・停止に関連するスクリプトを格納
client JBoss EAPの外部もしくはWebコンテナ外で動作するクライアントアプリケーションで使用するための設定ファイルおよびjarファイルを格納
docs データソース定義の例や設定ファイルのDTDなどを格納
lib JBoss EAPが使用するライブラリを格納。ユーザアプリケーションに関係するライブラリをここに置かないように注意
server サーバの設定ファイルを格納。初期状態でall、default、minimalおよびproductionの4種類

表2:jboss-as直下のディレクトリ一覧

   表2にあるとおり、サーバの設定は「<INSTALL_DIR>/jboss-as/server」以下に配置されることになります。JBoss EAP 4.2.0 では4種類のサーバ設定がデフォルトで提供されています。

サーバ名 説明
minimal 最低限のサービスのみを利用する場合の設定
ロギングサービス、JNDIサーバ、およびdeployディレクトリをスキャンするURLdeploymentScannerが有効
Webコンテナ、EJB/JMSなど、J2EE1.4で規定されている機能は無効
default J2EE 1.4(もしくはJava EE 5.0)の仕様に準拠したアプリケーションを動作させるための標準的な設定
JAXR、IIOP、およびクラスタリングサービスは無効
all クラスタリングなどJBoss EAPが持つ機能をフルに利用する場合の設定
production "all"の設定をベースにプロダクション環境用にチューニングされた設定
ログレベル変更、URLdeploymentScanner間隔の変更(60秒)など
JBoss EAPにのみ付属

表3:JBoss EAPのサーバ設定一覧(再掲)

   実際のプロジェクトでは、これらの設定をテンプレートにプロジェクトごとの設定を作成することになります。

   作成方法は非常に簡単で、上記の中から一番プロジェクトの要望に近い設定をディレクトリごと別名でコピーし、プロジェクトの必要に応じて適した設定を行うだけです。

$ cp -r default/ myprj

   では最後に、表4を参考にJBossサーバのディレクトリ構成を確認してください。

conf JBoss EAPのブートストラップディスクリプタであるjboss-service.xmlおよびコアサービスの定義を含む
data データの永続的な記録を必要とするサービスが利用
deploy ホットデプロイサービスを格納するディレクトリ。またサーバの設定ファイルも格納。通常、ユーザアプリケーションをデプロイするディレクトリとしても使用
デフォルトで、このディレクトリは定期的にスキャンされる様に設定されており、配置されたコンポーネントに変更があった場合に自動的に再デプロイされる
lib Javaライブラリ等のjarファイルを格納。JDBCドライバは通常このディレクトリに配置。このディレクトリに配置されたjarファイルは起動時、共通クラスとしてロード
log ログファイルを配置。JBoss EAPはロギング機能でJakaruta log4jを使用しているためconf/log4j.xmlにてログ出力の設定を変更可能
tmp テンポラリディレクトリ。JBoss EAPがデプロイを実行する際にパッケージを展開する等で使用
work WebコンテナがJSPをコンパイルするのに利用するディレクトリ

表4:JBossサーバのディレクトリ構成

1   2  3  次のページ


レッドハット株式会社 三木 雄平
著者プロフィール
レッドハット株式会社  三木 雄平
JBossグループ ソリューション・アーキテクト
株式会社SRAを経て、2002年に日本BEAシステムズ入社。カスタマーサポートチームにて、アプリケーションサーバおよびJava VM(JRockit)のサポートを担当。その後、プリセールスチームにてSIP Servlet関連の製品に携わる。2007年よりレッドハット JBossグループにてプリセールスを担当。
音楽(聴く&演奏)大好き。最近はJazzyなベースとリズムに魅了されてます。


INDEX
第3回:JBoss Enterprise Application Platformのアーキテクチャを理解する
はじめに
  JBoss EAPのアーキテクチャ
  JBoss EAPのディレクトリ構成の変更と注意点