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

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-asJBoss EAPのメインディレクトリ。起動するためのスクリプト、ライブラリ、設定ファイルなどを含む
seamHibernateとJBoss Seamフレームワークのためのファイルを含む
uninstallerアンインスーラを含む。GUIインストーラ付モジュールにのみ付属

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

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

bin起動・停止に関連するスクリプトを格納
clientJBoss EAPの外部もしくはWebコンテナ外で動作するクライアントアプリケーションで使用するための設定ファイルおよびjarファイルを格納
docsデータソース定義の例や設定ファイルのDTDなどを格納
libJBoss 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で規定されている機能は無効
defaultJ2EE 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サーバのディレクトリ構成を確認してください。

confJBoss EAPのブートストラップディスクリプタであるjboss-service.xmlおよびコアサービスの定義を含む
dataデータの永続的な記録を必要とするサービスが利用
deployホットデプロイサービスを格納するディレクトリ。またサーバの設定ファイルも格納。通常、ユーザアプリケーションをデプロイするディレクトリとしても使用
デフォルトで、このディレクトリは定期的にスキャンされる様に設定されており、配置されたコンポーネントに変更があった場合に自動的に再デプロイされる
libJavaライブラリ等のjarファイルを格納。JDBCドライバは通常このディレクトリに配置。このディレクトリに配置されたjarファイルは起動時、共通クラスとしてロード
logログファイルを配置。JBoss EAPはロギング機能でJakaruta log4jを使用しているためconf/log4j.xmlにてログ出力の設定を変更可能
tmpテンポラリディレクトリ。JBoss EAPがデプロイを実行する際にパッケージを展開する等で使用
workWebコンテナが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のディレクトリ構成の変更と注意点
JBoss Enterprise Application Platformの全貌
第1回Red Hatが提供するJBoss Enterprise Middlewareとは
第2回JBoss Enterprise Application Platformを操作する
第3回JBoss Enterprise Application Platformのアーキテクチャを理解する
第4回JBoss Web - Tomcatエボリューション
関連記事
JBossクラスタ入門
オープンソースJ2EE APサーバ JBossの可能性!
Javaアプリケーションサーバのクラスタリング機能比較

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored